私は最近のような構成でカスタムエラーページを作成しました「= _?」:カスタムnginxのためのPHPのエラーページがに応答しない
error_page 404 /error.php?code=404
しかし、唯一のerror.php
の代わりに現れているようですerror.php?code=404
。
私はブラウザで/error.php?code=404
にアクセスしてphpファイルをチェクしました。うまくいきます。私は$を使用しています
助けてください。どうもありがとう。
私は最近のような構成でカスタムエラーページを作成しました「= _?」:カスタムnginxのためのPHPのエラーページがに応答しない
error_page 404 /error.php?code=404
しかし、唯一のerror.php
の代わりに現れているようですerror.php?code=404
。
私はブラウザで/error.php?code=404
にアクセスしてphpファイルをチェクしました。うまくいきます。私は$を使用しています
助けてください。どうもありがとう。
nginx documentationから、パラメータではなく、スクリプト名(または@named location)のURIのみを指定できるようです。スクリプトは元のURIのパラメータを代わりに受け取ると思います。あなたがリダイレクトする各エラーコードのために別々のerrorXYZ.phpスクリプトを持っている必要があります
1):
は、いくつかのソリューション/回避策があります。
2)http://yourserver.com/error.php?code=404
などの外部リダイレクトを使用してください。ただし、これはHTTP応答コード302で無効になり、ブラウザにはerror.php
の場所が表示されます。
3)または/error.php/404
などのURIをPHPスクリプト内で解析します。