No.3152, No.3151, No.3150, No.3149, No.3148, No.3147, No.3146[7件]
➡ 2022年10月21日(金) 19時31分 〔2年以上前〕 回答/返信 No.3150 ✎ !
tegalog.cgiの89行目付近に、以下のような行があります。
#use lib '.'; # サーバにインストールされていないモジュールを自力で置いた場合は~(略)
この行の先頭にある「 # 」記号を消して、以下のようにして上書き保存して下さい。
use lib '.';
この状態で tegalog.cgi をアップロードすると、解決すると思います。(解決できなかった場合は、サーバのエラーログをもし閲覧可能なら、どんなエラーが出ているのかを教えて頂けるとありがたいです。)
参考までに教えて頂けるとありがたいのですが、「CGIモジュール」か「Time::Localモジュール」のファイルを、てがろぐ設置ディレクトリに自力で置かれたりしましたでしょうか?(上記の89行目は、本来は「サーバにインストールされていないモジュールを自力で置いた場合に、それを読み込ませるための対処方法」として用意しているものなのですが。) 自力でそのようなことをしていないにも関わらず、この89行目のような修正が必要になるケースがあるのだろうか……? とちょっと疑問に思ったもので。
➡ 2022年10月21日(金) 18時22分 〔2年以上前〕 No.3149 ✎ !
詳しくありがとうございます!以下、回答になります。
💬てがろぐ新品一式をセットアップしてみて頂けますでしょうか?
▶3.8.0の最小版をセットアップしてみました。後述する、今までいじっていた部分と、元のデータのままアップロードしてみましたが、動かずでした。
試しにtegalog.cgiの1行目を以下のようにしてみたところ
#! /usr/local/bin/perl
管理画面(?mode=admin)含め、tegalog.cgiにアクセスすると、
lscgid: execve():/home/ユーザーID/public_html/tgtest/tegalog.cgi: No such file or directory
といった文章が表示されました。
ここから表示された文章を元に調べてみたものの、調べ方が悪く、
自分の力では解決に至りませんでしたm(__)m
💬てがろぐをバージョンアップしたわけでもなく、何もファイル構成を変更しない状態で突然 500 エラーになったのですか?
▶つい昨日のお昼までは普通に使わせていただいておりましたので、
原因があるとすれば、レンタルサーバー内の移行以外考えられません。
💬直接管理画面にアクセスしても、同様に 500 エラーになりますか?
▶はい。なります。
💬どこのサーバをお使いでしょうか?
▶mixihostになります。
💬tegalog.cgi の1行目など、CGIソースを書き換えている箇所がありますか?
▶Version 3.8.0現77行目
my $howtogetpath = 2;
↓
my $howtogetpath = 0;
にして動かしていました。
mixihostの担当者様からのご回答が来まして、
自分なりにアレやコレやと調べてみたものの、ちんぷんかんぷんでした…。
共有の許可を頂きましたので全文掲載させていただきます。
───────────────────────
XXXX 様
平素は当サービスをご利用いただき誠にありがとうございます。
mixhost カスタマーサポートでございます。
お問い合わせのPerlプログラムが動作しない件につきましてお調べ致しました。
本現象はサーバーにインストールされているPerlのバージョンの違いによる事が、
原因である事がわかりました。
マイグレーション前のjp22サーバーでは、「Perl v5.16.3」がインストールされており、
マイグレーション後のty10003サーバーでは「Perl v5.26.3」がインストールされております。
5.26.0以降では@INCの仕様変更があり、セキュリティ上の理由からカレントディレクトリが
デフォルトでは含まれなくなりました。
このため、大変お手数おかけいたしますが、@INCにカレントディレクトリを追加するコードを
追加するか、明示的にロードするファイルを指定するように変更して頂けますでしょうか。
外部サイトとなりますが下記ご参考になるかもしれませんので、
記載させていただきたいと存じます。
参考にされ設定等を行われた場合でも、弊社での動作保証及び
サポートはございませんのでご了承くださいませ。
【"Shade検索"Wiki [Perl5.26]】
https://shade-search.com/sts/term/term.php?noform=yrry...
【「Perl 5.26」リリース、「@INC」の仕様が変更される | OSDN Magazine】
https://mag.osdn.jp/17/06/02/161500
ご不明な点などございましたら、お気軽にお問い合わせください。
今後ともmixhostをよろしくお願いいたします。
───────────────────────畳む
長文になってしまい、大変恐縮ではございますが何卒よろしくお願いします。
てがろぐは、物を作っていて忘れてしまうことのメモや、作業の進捗を張ったりするのに重宝しておりまして…。
投稿できなくて、とても寂しいです。
お手数おかけいたします。
➡ 2022年10月21日(金) 16時03分 〔2年以上前〕 No.3148 ✎ !
それで動かない場合は、以下の質問にもご回答頂けると助かります。
- てがろぐをバージョンアップしたわけでもなく、何もファイル構成を変更しない状態で突然 500 エラーになったのですか?
- 直接管理画面にアクセスしても、同様に 500 エラーになりますか?(URLの末尾に ?mode=admin を加えると管理画面になります。)
- どこのサーバをお使いでしょうか?
- tegalog.cgi の1行目など、CGIソースを書き換えている箇所がありますか?
➡ 2022年10月21日(金) 14時19分 〔2年以上前〕 No.3147 ✎ !
使っているサーバーがPerlのバージョンが5.26.3にアップデートされた影響で500エラーが出てしまいました。
調べ方が悪く、自力で調べてもよくわからず;お力添えをお願いしたいです🙏
💬エラーについて
Cパネルのエラーログから、このようなログが取得できました。(一部ボカしております)
💬「CGIモジュール」か「Time::Localモジュール」について
ご、ごめんなさい、検索してみたのですが、特にそういった特別なことはサーバー内操作も含め、一切しておりません。
FTPからぴょーーーっと、ドラッグ・アンド・ドロップでアップロードし、
そのあとは、パーミッションをFTPソフトで行い、
サーバーのファイルマネージャー上からUTF-8で編集できるエディターにてcgiを直接操作しております。
●変更箇所や、行ったこと
セットアップ説明にそった設置
↓
500 Internal Server Error
教えていただいた、tegalog.cgiの89行目付近を変更
↓
同じく、500エラーを発生させていました。
●500エラーを回避
■変更箇所
tegalog.cgi 1行目
#! /usr/bin/env perl
↓
#! /usr/local/bin/per
↓
lscgid: execve():/home/ユーザーID/public_html/hogehoge.net/tegalogのディレクトリ/tegalog.cgi: No such file or directory
という画面が表示されております。
重ね重ね、お手数おかけいたします。よろしくお願いします。