独自のエラーページが表示されない

トップページ フォーラム サポートフォーラム 独自のエラーページが表示されない

タグ: 

2件の返信スレッドを表示中
  • 投稿者
    投稿
    • #1714

      存在しないPHPファイルにアクセスした場合のみ独自エラーページが表示されず、「File not found.」と表示されます。
      error.log には「(略)Got error ‘Primary script unknown’」と出力されます。
      存在しないPHP以外のファイル(例えば「test.txt」)の場合は独自エラーページが表示されます。

      PHP-FPM関連だと思うのですが、.htaccessに何か追記すれば独自エラーページが表示できるようになるのでしょうか?

      独自エラーページの設定は以下の通りです。
      [.htaccess]
      ErrorDocument 404 /404.php
      ↑404.htmlでも試しましたが結果は変わらず

      何かご存知でしたらご教示頂けると幸いです。

    • #1715
      アバター画像ちらみ
      キーマスター

      ちょっと調べただけですが、この辺りが参考になるかもしれません。
      https://qiita.com/hiroin/items/94a1f0a5b691a70e4d1e

      仰るようにApacheではなくphp-fpmに処理が渡った後の問題のようなので、php-fpmに渡す前にApacheで404を返そうというものです。

    • #1716

      何度も「500 Internal Server Error」になりながら以下の形で実現できました。

      [.htaccess]
      ————————————————————————————————–
      <IfModule mod_rewrite.c>
      RewriteEngine On
      # 存在しないPHPファイルにアクセスした場合は404エラーを返す
      RewriteCond %{REQUEST_FILENAME} \.php
      RewriteCond %{REQUEST_FILENAME} !-f
      RewriteRule ^ – [R=404]
      </IfModule>

      (略)

      ErrorDocument 404 /404.php
      ————————————————————————————————–
      ↑/404.php は独自のエラーページのパスを記載。IfModule内はインデント有り

      他のサブドメインでも同じ現象が起きているので備忘録として残しておきます。

      ご教示ありがとうございます、助かりました。

2件の返信スレッドを表示中
  • このトピックに返信するにはログインが必要です。
タイトルとURLをコピーしました