カレッヂ |
質問者 Takashi
投稿日 4/12(金) 16:23:37
PerlでCGIを作り、あるサーバで使って正常に使えていたのですが、 サーバを乗り換えたら、全く同じプログラムでInternal Server Errorが 出てしまいました。 Perlの転送モードやパス、パーミション、 その他の使用ファイルもすべてディレクトリを確認して設置済みです。 また、DOSでそのPerlを実行させるとエラーなく実行されます。 このような場合、いったいInternal Server Errorになるのは 他にどのような原因が考えられるのでしょうか? サーバの会社に聞いたら、それはプログラムの問題なので サポート外と言われてしまいました。 もしわかる方がいましたら、ぜひ教えて下さい。 |
回答者 chizuru
[削除]
投稿日 4/13(土) 11:23:57
特定ファイル(cgi/sendmail/nfk/gzipなど)のパス指定方法の間違いや、 cgiの記述ミス(print ライン末尾の";や、CGI最終行の改行が抜けている等)場合、internal server error がよく出ますよね? 以前はきちんと動いていたプログラムであれば、やはりファイルの指定が問題では? SSI使用時のファイル拡張子が、あらかじめ決められていないかどうか、 そのサーバー固有のパス指定の方法がないかどうか、 今一度、サーバー側で提供されているQ&A欄などを読み返されてみては如何でしょうか。 対して役に立てずにごめんなさぃ。。 |
質問者 Takashi
[削除]
投稿日 4/13(土) 11:37:19
ありがとうございました。色々試しています。 |
質問者 Takashi
[削除]
投稿日 4/13(土) 13:05:36
今原因がわかりました。 龍冠堂コンサルティング(COMCOMCLUB)のサーバですけど 不思議なサーバです。 CGIスクリプトを設置するディレクトリのパーミションが755でなければ 作動しないサーバだったようです。 しかし、そのCGIスクリプトを設置しているディレクトリに 読み書き用データファイルを置いてあります。 この場合、そのディレクトリのパーミションを755に設定してしまって データの書き込みは出来るのでしょうか?非常に不安です。 もしわかりましたら教えて下さい。 |
回答者 今夜はやすだ
[削除]
投稿日 4/15(月) 01:08:50
他者の書き込みを禁止しているディレクトリになっていることから、このwebサーバは、apacheで且つ、そのサーバでsetuid/setgidが操作可能で、それによりapacheのsuexecでCGIを実行している環境なのがわかります。(たぶん(^^;) suexecでCGIがホームユーザで実行できるようになっているので、755で大丈夫なはずです。 |
質問者 Takashi
[削除]
投稿日 4/16(火) 01:37:14
ご返事ありがとうございました。助かりました。 実は同じ質問を、当事者の冠堂コンサルティング(COMCOMCLUB)にも しているのですが、あそこからは3日経ってもまだ返事がありません。 あそこは、サポートの対応が遅く今後のことが少々不安です。 |
返信(回答)する
Web裏技 |