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

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

 Userdirでcgiが500 Internal Server Errorを返してきます。
日時: 2006/07/02 14:41
名前: Asps

はじめまして、Aspsと申します。この度、サーバーをFedoracore5で利用しようと思い、準備していましたが問題が発生し、自分で解決出来ない為、お知恵を頂けたらと思い、投稿させて頂きます。

当方の環境は、以下の通りです。
Document rootは標準の"/var/www/html"です。
クライアントには、WindowsXPを使っています。
http://192.168.??.??/test.cgi shtml thml phpは問題ありません。
要するに、Document rootでは、cgi,SSI,php等全て動作します。

ところが、Userdirで同じような事をやると、cgiのみ動作しません。
Userdir directiveの設定は以下の通りです。
<Directory /home/*/public_html>
  options Includes ExecCGI
  AllowOverride All
  Order allow,deny
  All from all
</Directry>
この様になっています。
Userdirで動作させたcgiはDocument rootで動作させたファイルをcpコマンドで
Userdirへコピーしたものです。
http://192.168.??.??/~linux/〜 です。
念の為に、SE Linuxの確認、Perlのpathを確認しましたが、問題無さそうです。
error_logには次のような記述がありました。
"Premature end of script header: test.cgi"
Prematureとは早すぎると言う意の意味のようですが、Directoryが変わっただけと私は認識しているので
なぜ動かないのか、対策の仕方がわかりません。

当方、今までWindows2000+Apache1.xxでサーバを動かしていましたが、とうとうハードが壊れてしまい
これを機に、Linuxでと思い、格闘しております。
前途多難と覚悟しております。
しかし、是非やりかけたことなので、達成したいと思っています。
よろしくお願いします。

■ コンテンツ関連情報

 Re: Userdirでcgiが500 Internal Server Errorを返してきます。 ( No.1 )
日時: 2006/07/03 16:20
名前: 管理者

Aspsさん、はじめまして。

こちらの掲示板は『雑談掲示板』なので、ご質問は『質問掲示板:http://kajuhome.com/cgi-bin/patio/』へお願い致します。
(『質問掲示板』の方が参照率も高いので、なおさら回答率も上がると思いますよ。)

まずapacheでユーザページを公開するには、apache内部でsuExecによる実行を行います。
suExecは条件を満たしていないと、CGI等を実行することが出来ません。

  参照:http://httpd.apache.org/docs/2.0/ja/suexec.html

オフィシャルページでも書かれていましたが、完全に把握していない場合は「使うべきでない」と書かれていました。
(当方も、分からないので使用していません。)


まず、今回の事象がsuExecによるものか切り分ける必要がありますね。

以下のコマンドを実行してください。
# apachectl -V

実行結果に「-D SUEXEC_BIN="/usr/sbin/suexec"」という部分があり、かつ、そのパスにバイナリモジュールが存在していれば有効になっています。

モジュールがあるか確認
# ls -l /usr/sbin/suexec
-r-s--x--- 1 root apache 12024 2月 12 08:12 /usr/sbin/suexec


オフィシャルサイトでは、バイナリモジュールを削除するか、リネームすれば無効になると書かれているので、リネームしてください。

# mv /usr/sbin/suexec /usr/sbin/suexec_bak


この後、反映させる為にapacheを再起動してください。

# /etc/rc.d/init.d/httpd restart


上記まで、出来たら再度ユーザページでCGIスクリプトを確認してみて下さい。
 Re: Userdirでcgiが500 Internal Server Errorを返してきます。 ( No.2 )
日時: 2006/07/03 16:36
名前: 管理者

追記

ユーザ公開の場合、ユーザ公開ディレクトリおよびファイル(CGI等)が、その所有者およびグループでOtherに書き込み件がなければ基本的にsuExecは許される模様です。
 Re: Userdirでcgiが500 Internal Server Errorを返してきます。 ( No.3 )
日時: 2006/07/04 16:59
名前: Asps

管理者様

早速のご返事をありがとうございます。
また、投稿場所に関して、間違えておりました。
大変失礼しました。

さて、今回の件で"suExec"を確認してみました。
モジュールが登録されていたようなので、リネームしてみましたが
依然、症状の改善はありませんでした。

取りあえず、もう一度OSを最初からセットアップし直してみようと思います。
初めてのFedora coreだったので、もしかするとセットアップするときに
何らかの操作ミスを犯しているかもしれません。

それと、もう一つ質問させてください。
MTU値は標準で"1500"になっているようで、この値を変更する方法は
わかりましたが、再起動すると"1500"へ戻ってしまいます。
DOSの場合ですと、"autoexec.bat"等で、起動時に色々と設定を実行させる事が
できますが、Fedora coreには、この"autoexec.bat"に変わる様なものは
あるのでしょうか?
あるのであれば、非常に簡単にこの問題は解決出来る様に思うのですが。

よろしくお願いします。
 Re: Userdirでcgiが500 Internal Server Errorを返してきます。 ( No.4 )
日時: 2006/07/04 17:08
名前: 管理者

> モジュールが登録されていたようなので、リネームしてみましたが
> 依然、症状の改善はありませんでした。

apacheのサービスを再起動されて見ましたか?

> 取りあえず、もう一度OSを最初からセットアップし直してみようと思います。
> 初めてのFedora coreだったので、もしかするとセットアップするときに
> 何らかの操作ミスを犯しているかもしれません。

なれる為に、何度かインストールして見るのも良いかもしれませんね。
ただ、再インストールする前に、以下のURLをご確認してみて下さい。

  参照:http://kajuhome.com/tips/tips_03_011.shtml
    :http://kajuhome.com/tips/tips_03_012.shtml


> DOSの場合ですと、"autoexec.bat"等で、起動時に色々と設定を実行させる事が
> できますが、Fedora coreには、この"autoexec.bat"に変わる様なものは
> あるのでしょうか?

Linuxの場合だと「/etc/rc.local」ファイルがそれに該当します。

■ その他

ページ先頭へ


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