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

このページは表示専用です。新規投稿・レスや最新情報はこちらです。

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

 cgiの実行
日時: 2006/11/04 12:37
名前: とんとん

こんにちは。

またお邪魔いたします。
本人がよく理解していないために前に質問したことの繰り返しになってしまい申し訳ないのですが
よろしくお願いします。
Fedora Core5です。

実は、Movable Type(無料)を過去に何度かダウンロード→インストール→削除を繰り返えしてしまったことが原因なのかわかりませんが
mt-check.cgiのファイルをひらくとcgiソースが表示されログインできなくなってしまいました。

apacheの設定ではcgiが実行できるように設定いたしました。

AddHandler cgi-scrpt .cgi←先頭の#を削除
Options FollowSymLinks←ExecCGI追加

以下Movable Typeのインストールと設定は解説書にそってやりました。


/var/www/html/test.cgiでcgiの動作テストをやってみましたところ

クライアントからhttp://サーバのアドレス/test.cgiでは「Internal Server Error」になりました。
そのときのerror_logは下記でした。
略・・・[error][client **.**.***.**] Premature end of script headers:

しかし下記で実行しますとcgiは実行されました。
# /usr/bin/perl /var/www/html/test.cgi

Content-type: text/html

<html>
<body>Hello World</body>
</html>

なんとかまたMovable Typeを設置したいと思いますのでお力お貸しください。

■ コンテンツ関連情報

 Re: cgiの実行 ( No.1 )
日時: 2006/11/04 13:25
名前: 匿名さん

1)
test.cgi に実行権がない

2)
test.cgi の一行目が #!/usr/bin/perl になっていない

3)
AddHandler cgi-scrpt .cgi
Options FollowSymLinks

を書く場所が間違っている(cgi-scrpt→cgi-scriptは写し間違い?)

4)
Content-type: text/html の手前に妙な改行があるのは気のせい?

ぱっと思いつくのはこれくらいです


 Re: cgiの実行 ( No.2 )
日時: 2006/11/04 15:41
名前: とんとん

匿名さん,
ありがとうございます。

>1)test.cgi に実行権がない

chmod 755 test.cgiでよいのでしょうか?
それともどのようにすればよいのでしょうか?(初心者ですみません)

>2)test.cgi の一行目が #!/usr/bin/perl になっていない
#!/usr/bin/perl になっておりました
Perlのシンボリックリンクを貼ってあります。

>3) AddHandler cgi-scrpt .cgi
>Options FollowSymLink
>を書く場所が間違っている(cgi-scrpt→cgi-scriptは写し間違い?)


すみませんscriptの写しまちがいです。
書いた場所は下記になります。

#
AddHandler cgi-script .cgi

#
# For files that include their own HTTP headers:
#
#AddHandler send-as-is asis

#
# For type maps (negotiated resources):

・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・

The Options directive is both complicated and important. Please see
# http://httpd.apache.org/docs/2.2/mod/core.html#options
# for more information.
#
  Options FollowSymLinks ExecCGI

#
# AllowOverride controls what directives may be placed in .htaccess files.
# It can be "All", "None", or any combination of the keywords:
#  Options FileInfo AuthConfig Limit


>4)Content-type: text/html の手前に妙な改行があるのは気のせい?

手書きでしので変な改行が入りました、実際は下記になります。
#!/usr/bin/perl
print "Content-type: text/html\n\n";
print "<html>\n";
print "<body>\n";
print "Hello World";
print "</body>\n";
print "</html>\n";


>しかし下記で実行しますとcgiは実行されました。
># /usr/bin/perl /var/www/html/test.cgi
>Content-type: text/html


><html>
><body>Hello World</body>
></html>



これはcgiが実行されてはいないのですか?
 Re: cgiの実行 ( No.3 )
日時: 2006/11/04 16:30
名前: 匿名さん

じゃああとは一行目をこうしてみる。
#!/usr/bin/perl --

それからココも参考に。

ttp://it-revolution.seesaa.net/article/13687310.html

これでダメだったら私にはわかりません。あと、コマンドラインからの実行テストは

#/usr/bin/perl /var/www/html/test.cgi

ではなくて、

#cd /var/www/html
#./test.cgi

とするようにしてください。それからエラーメッセージの

"Premature end of script headers"

をgoogleでそのまま検索すると色々情報が得られますよ。


 Re: cgiの実行 ( No.4 )
日時: 2006/11/04 16:43
名前: とんとん

ありがとうございます。

>#!/usr/bin/perl --
やってみたのですがだめでした

>あと、コマンドラインからの実行テストは
>#cd /var/www/html
>#./test.cgi


下記のようにやってみましたら「そのようなファイルやデレクトリはありません」となってしまいました。
なぜ??

[root@miserver html]# ./test.cgi

>それからエラーメッセージの
>"Premature end of script headers"
>をgoogleでそのまま検索すると色々情報が得られますよ。


はい、検索して調べてみましたがよく理解できません(困りました)
引き続き検索中です。
 Re: cgiの実行 ( No.5 )
日時: 2006/11/04 17:19
名前: とんとん
参照: http://miserver.dvrdns.org:8080/test6.cgi

おせわになります。

匿名さん、ごめんなさい。

>#!/usr/bin/perl --

やり方かまちがっていたようでこのようにしたらcgiが実行されました。

ではapacheはcgiの実行には問題ないのですね。

>mt-check.cgiのファイルをひらくとcgiソースが表示されログインできなくなってしまいました

原因がわかりません。
 Re: cgiの実行 ( No.6 )
日時: 2006/11/05 14:19
名前: 武蔵

mt-check.cgiはどこに配置しているんでしょうか?
またパーミッション等も確認しましたか?
 Re: cgiの実行 ( No.7 )
日時: 2006/11/05 19:24
名前: とんとん
参照: http://misever.dvrdns.org:8080/test6.cgi

武蔵さん ありがとうございます。

>mt-check.cgiはどこに配置しているんでしょうか?
はい、下記になります。
/var/www/html/blog/mt-check.cgi

>またパーミッション等も確認しましたか?
blogをapacheの権限に変更いたしました。
パーミッションの確認はしていませんでした。
確認します。

chown -R apache.apache blog
 Re: cgiの実行 ( No.8 )
日時: 2006/11/06 23:00
名前: とんとん
参照: http://misever.dvrdns.org:8080/test6.cgi

お世話になります。

経過

1)初めてのインストールは問題なくMovable Type設置する

2)カスタマイズ失敗しMovable Typeを削除する

3)再度Movable Typeをインストールし、cgiソースが表示されるようになった。
  数回インストールしてみたが結果は同じ

4)仕方なくFedora再setupしてみたがなぜかcgiソースが表示
  これって不思議です

5)最後の手段はHDD交換してMovable Type復帰しました。

素人療法にて復帰いたしました。

ありがとうございました。

■ その他

ページ先頭へ


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