- ベストアンサー
Apacheをlocalhostで動かしている際のPerlの引数に関する問題
- Apacheをlocalhostで動かしている場合、Perlの引数のないものやCGIはうまく動きますが、exec cmdでPerlを呼び出すタグの入ったHtmlはInternal Server Errorになってしまいます。
- また、exec cmdの入っていないHtmlでも同様にInternal Server Errorになります。
- ApacheではHtmlを動かすことができないのか、設定に問題があるのか教えてください。
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
- ベストアンサー
>ApacheではHtmlは動かせないのでしょうか、それとも設定がどこか問題があるのでしょうか。 設定がどこか問題があると思います。 >exec cmdの入っていないHtmlでもInternal Server Errorになってしまいました。 通常htmlファイルでInternal Server Errorはでません。 Internal Server Errorが出るのでしたら、そのhtmlファイルはcgiファイルとしてサーバーが処理していると思います。 原因として、 ・拡張子が.cgiになっている。 htmlの場合の拡張子は.htmlや.htm exec cmd でPerlを呼び出すタグの入ったHtmlは、.shtml ・cgi専用のディレクトリにファイルがある。 Apacheの設定でScriptAliasで指定したディレクトリ内のファイルはcgiとして扱われる。 例)ScriptAlias /cgi-bin/ /home/www/public_html/cgi-bin/ ・html拡張子でもcgiとして扱う設定がしてある。 例)AddHandler cgi-script .cgi .html htmlファイルでInternal Server Errorが出るのでしたらこのどれかと思います。 Apacheの設定順序は、この場合 (1)htmlを正しく表示させる。 (2)cgiを動作させる設定をする。html表示とcgi動作を確認する。 (3)SSIを動作させる設定をする。html表示とcgi動作とSSI動作を確認する。 の順序で設定した方が良いと思います。 exec cmd で Perlを呼び出すタグの入ったHtmlはSSIです。 SSIを使う場合設定が必要です。 『Apache SSI 設定』でWeb検索すると設定方法を調べられると思います。 とりあえず(1)でしょう。
お礼
ありがとうございました。大変参考になりました。