• 締切済み

PHPファイルのシンボリックリンクの実行で Internal Server Error

プログラムファイルが以下にあるとします。 /home/pgroot/public_html/test.php 内容は、 <?php print "ok"; ?> という最小限のスクリプトです。 これに、以下のようにシンボリックリンクを張ります。 /home/myhome/public_html/test.php (---->/home/pgroot/public_html/test.php) リンクの方をWEBからアクセスすると、Internal Server Error になります。本物の方をWEBからアクセスすると、正常に動作します。 Internal Server Error の時の Apache のエラーログには以下の記述があります。 [error] Premature end of script headers: /home/myhome/public_html/test.php 他のサーバーでは普通に動くのですが、なぜこのサーバーでは動かないのかという鯨飲を知りたいのですが、どなたかアドバイスいただけませんか? よろしくお願いします。

みんなの回答

  • Lean
  • ベストアンサー率72% (435/603)
回答No.1

Optionsディレクティブで、FollowSymLinksが指定されていないのでシンボリックリンクをたどってくれていないからとか。

stoutontap
質問者

補足

確認してみたのですが FollowSymLinks は指定されているようです。 補足になりますが、シンボリックリンク自体はうまく機能しているようです。例えば、 /home/pgroot/public_html/test.html へのシンボリックリンクを作ってみたところ、これは正常に表示されました。 PHPの設定の問題なのでしょうか? 自分でも調べているのですが、もし何か分かりましたら教えてください。

関連するQ&A