はじめての自宅サーバ構築 - Fedora/CentOS -
Last Update 2018/05/30
[ 更新履歴 ] [ サイト マップ ] [ 質問掲示板 ] [ 雑談掲示板 ] [ リンク ]
トップ >> 質問掲示板

 このスレッドはクローズされています。記事の閲覧のみとなります。

 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]

■ その他

ページ先頭へ

Copyright(©)2004-2018 First home server construction. All Right Reserved.