こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

締切り済みの質問

Apach での SSIとCGIとPHP

Redhat Linux9.0
Perl-5.8.0-88.3
php-4.2.2.-17.2 ですが。。。

ユーザーディレクトリでPerlが動かなくて困っています。

通常、httpd.conf の

<Directory /home/*/public_html> の部分に
Options MultiViews Indexes SymLinksIfOwnerMatch Includes ExecCGI で動くと思うのですが、なぜかダメでした。

Error message:
Premature end of script headers: test.cgi





それで、httpd の フォルダを見たところ conf.d/perl.conf というのがあり、そこに次の様に記述したら、perlは動きました。

<Directory /home/*/public_html>
SetHandler perl-script
PerlHandler ModPerl::Registry::handler
PerlOptions +ParseHeaders
Options +ExecCGI
</Directory>

しかし、こうすると今度は SSI と PHP が動かなくなりました。

You don't have permission to access the requested object. It is either read-protected or not readable by the server.


なお、上のディレクティブをコメントアウトすると、SSI と PHP はOKです。

この場合、PerlとPHPとSSIのすべてを動くようにするにはどうしたらいいのでしょうか?

よろしくお願いします。

投稿日時 - 2003-11-20 16:47:58

QNo.710724

すぐに回答ほしいです

このQ&Aは役に立ちましたか?

1人が「このQ&Aが役に立った」と投票しています

回答(2)

ANo.2

Premature end of script headersのエラーについては結構ヒットしますのでそれらを参考にしてください
http://www.nishimoto-site.net/archiver/ML/apache-ML/200003/msg00019.html

情報が少ないのでこれ以上はわかりかねます。もし自分が同じ症状に出くわしたとしたら恐らくソースからインストールし直すと思います。

投稿日時 - 2003-11-22 01:59:55

ANo.1

test.cgi の記述内容、conf.d/perl.confの記述のどこをどのように書き換えたのか不明です。Apacheのインストール方法もわかりません。

>>Premature end of script headers: test.cgi
ブラウザからアクセスした時にエラーがでていると思うのですが、出力される内容はContent-type: text/plainで指定されていますか?
CGIのヘッダ指定を見直して下さい。もし抜けていたら追加し、conf.d/perl.confは元の設定にもどして動作を確認しみてください。

投稿日時 - 2003-11-21 10:54:09

補足

apacheのインストールは、Linuxのインストール時に選択しただけのものです。

症状は次のページのサンプルでも出ています。SSIが動けばSGIがダメ、または、その逆です。

http://www2j.biglobe.ne.jp/~apollo/server/apacuse.html

投稿日時 - 2003-11-21 12:24:25

あなたにオススメの質問