このスレッドはクローズされています。記事の閲覧のみとなります。
CGIが動かない。 |
|
- æ¥æï¼ 2007/12/01 22:29
- ååï¼ RYO
- Fedora8でサーバを立てました。通常のhtmlは正常に表示されるのですが、CGIがうまく動きません。このサイトのトラブルシュートを読んでその通りに設定しています。(perlのパスは合っています。Cぎの実行は許可されています。CGIの実行拡張子は.cgiと.plになっています)設置は、Apacheのデフォルトである/var/www/htmlの下にcgi-binフォルダを作ってその中にCGIを設置しています。この状態でWindowsマシンからhttp://<サーバのIPアドレス>/cgi-bin/test.cgiとして呼び出すと
Forbidden You don't have permission to access /test2.cgi on this server. というメッセージが表示されます。もちろんtest.cgiのパーミッションは755に設定しています。何か他にも設定があるんでしょうか?
①不明点・障害内容:CGIが実行できません。 ②ログの有無 : (有:その内容): ③Distribution :Fedora Version:8 ④Service Name : Version: ⑤ネットワーク構成:
|
Page:
[1]
[2]
[3]
[4]
[5]
[6]
[7]
|
■ コンテンツ関連情報
Re: CGIが動かない。 ( No.26 ) |
|
- æ¥æï¼ 2007/12/09 01:11
- ååï¼ 来栖川来栖
- Vi で CR + LF になることはないので、サーバのコンソールを直に叩いているのではなく、何らかの端末エミュレータを介しているのでしょう。それなら設定により、Enter 押下時にいろいろなコードを送ることができます。
コンソールを直接叩くのでなければ、管理人さんの言うとおり、LF に設定の上、バイナリ モード (= 変換なし) で転送してください。
|
Re: CGIが動かない。 ( No.27 ) |
|
- æ¥æï¼ 2007/12/09 22:48
- ååï¼ RYO
- 来栖川来栖さん
viは、GINOMEメニューの「アプリケーション」−「システムツール」−「端末」で起動して試しました。 この使い方だと行末はCR+LFになるのですか?
ゆうかさん、管理者様
CGIはWindows上の秀丸エディタで作成しています。なので、もう一度「改行=lf」で再保存し、サーバに バイナリモードで転送しました。そしてGINOMEの端末でodしてみると今度は行末コードはLFだけになっていました。 これでうまくいくだろうと、Windowsから呼んでみるとやはり状況は変らず、500 Internal Server Errorと 表示されました。CGIお中身は
#!/usr/local/bin/perl print "Content-type: text/html\n\n"; print "<HTML>\n"; print "<HEAD><TITLE>Fedora8 CGI TEST</TITLE></HEAD>\n"; print "<BODY>\n"; print "Fedora8 CGI TEST<BR>\n"; print "</BODY>\n"; print "</HTML>\n";
で、同じCGIをレンタルしているサーバで試すと正常に表示されます。 あとは何が考えられるのでしょうか? これ以上状況が変らなければ一度Webサーバをアンインストールして 再インストールし、もう一度最初からやり直してみようかとも思っています。
|
Re: CGIが動かない。 ( No.28 ) |
|
- æ¥æï¼ 2007/12/10 00:52
- ååï¼ ゆうか
- RYOさん、いろいろ大変ですね。
>#!/usr/local/bin/perl >print "Content-type: text/html\n\n"; >print "<HTML>\n"; >print "<HEAD><TITLE>Fedora8 CGI TEST</TITLE></HEAD>\n"; >print "<BODY>\n"; >print "Fedora8 CGI TEST<BR>\n"; >print "</BODY>\n"; >print "</HTML>\n";
上記のプログラムですが実際に使用されたものをコピーして張り付けたのでしょうか? もしそうだとすると、print と ダブルクオテーションの間が全角のスペースになっていますので 実行すると当然エラーになります。 (ちなみに、私のエディタでは全角スペースを表示する設定があり、この手のエラーが無くなりました)
あと500 Internal Server Errorだけでは分からないので以前のように、 [Thu Dec 06 21:25:59 2007] [error] [client 192.168.1.4] (2)No such file or directory: exec of '/var/www/html/cgi-bin/test.cgi' failed のようなエラーも教えてください。ちなみにこのエラーでCR+LFの原因を推察しましたので、 このエラーが無くなってるといいのですが……
|
Re: CGIが動かない。 ( No.29 ) |
|
- æ¥æï¼ 2007/12/10 18:27
- ååï¼ RYO
- やっと動きました。
前回のコピーでは、全角スペースではなくて半角スペースが2個入っていました。私もエディタに 秀丸を使っているので、全角スペースがあればすぐに気付いたはずです。 これを直して完了と思ったのですが、まだエラーになります。ログの最期に「Premeture end of script headers」という エラーが記述されていましたので、多分と思ってCGIの末尾にあった空行を削除したところ、無事に動いてくれました。 もう少し他のCGIも試した上で解決に持ち込もうと思っています。
|
Re: CGIが動かない。 ( No.30 ) |
|
- æ¥æï¼ 2007/12/10 22:24
- ååï¼ RYO
- その後、掲示板のCGIも正常に動いています。これで一安心というところでしょうか?
ここで私の環境をまとめて置きます。
サーバ Dell Dimensin 900 CPU : Celeron 700MHz メモリ:512MB HDD:120GB OS:Fedora 8
クライアント (1)FTP端末 Gateway Performance 933改 Pentium III 933MHz Internet Explorer 7 NextFTP (2)閲覧のみ 自作機 Pentium III 933MHz Internet Explorer 7
みなさんのお蔭で動くようになりました。長々とお付き合いありがとうございました。 しかし、謎は残る… レンタルサーバをBIGLOBEに置いているのですが。こちらは行末コードとか 空行とか全然意識せず、NextFTPにお任せで転送しても正常に動いているのは、サーバ側に何か 設定か仕掛けがあるんでしょうか? なんとなくすっきりしません。
|
Page:
[1]
[2]
[3]
[4]
[5]
[6]
[7]
|
■ その他