PHP Nginx 構成 404 ページジャンプ
Nginx は高性能 HTTP およびリバース プロキシ サーバーであり、PHP は非常に人気のあるサーバーサイド スクリプト言語です。通常、Web サイトまたは Web アプリケーション内の特定のファイルまたはページに適切にアクセスできない場合、ユーザーには 404 エラー ページが表示されます。これは、サーバーが要求されたリソースまたはページを見つけることができず、404 エラーが返されるためです。この場合、カスタム 404 ページにリダイレクトするように Nginx と PHP を構成して、ユーザー エクスペリエンスを向上させ、より多くの情報を提供できます。
Nginx の構成
まず、Nginx 構成ファイルを編集する必要があります。これは、次のコマンドで実行できます:
sudo nano /etc/nginx/sites-available/default
サーバー ブロックで次の行を見つけます:
location / {
次のコードを追加して、404 エラーを処理するように Nginx を構成します:
# if the requested file does not exist, redirect to 404 page error_page 404 /404.html; location = /404.html { root /var/www/html; internal; }
これにより、要求されたページが存在しない場合は 404.html ページにジャンプすることが Nginx に通知されます。 404 ページが /var/www/html フォルダーにない場合は、パスを実際に 404 ページを保存したフォルダーへのパスに置き換える必要があります。
次のコードを使用して、この構成が機能するかどうかをテストできます:
sudo nginx -t
エラーがない場合は、Nginx 構成ファイルの構文が正しいことを示すメッセージが表示されます:
nginx: configuration file /etc/nginx/nginx.conf test is successful
最後に、Nginx サーバーを再起動して変更を有効にします。
sudo systemctl restart nginx
PHP の構成
次のステップは、404 エラーをキャッチして処理するように PHP インタープリターを構成することです。これを行うには、使用している PHP フレームワークまたは CMS の htaccess ファイルに次のコードを追加します。
RewriteEngine On RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule ^(.*)$ /404.php [L,QSA]
これにより、要求されたページが存在しない場合に 404.php にジャンプするように PHP に指示されます。 404 ページが Web サイトのルートにない場合は、パスを実際に 404 ページを保存するフォルダーへのパスに置き換える必要があります。
次のコードを使用して、このコードを .htaccess ファイルに追加します。
sudo nano /var/www/html/.htaccess
重要: Web サイトで Nginx をフロント側リバース プロキシ サーバーとして使用している場合、.htaccess ファイルは使用できません。この場合、このコードを PHP コードに追加する必要があります。
404 ページの作成
最後に、カスタム 404 ページを作成する必要があります。これは、要求されたリソースまたは見つからないページに関する詳細情報をユーザーに提供する機会です。
テキスト エディタを開いて、404.php という新しいファイルを作成します。次のサンプル コードを開始点として使用できます。
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>404 Not Found</title> </head> <body> <h1>404 Not Found</h1> <p>The requested URL was not found on this server.</p> </body> </html>
他のページへのリンクやユーザーに試してほしいリソースなど、詳細を自由に追加できます。
404 ページの配置
404.php ファイルを Web サイトまたはアプリケーションのルート ディレクトリ、または指定したフォルダー (PHP コードと Nginx の構成に応じて) に配置します。次のコマンドを使用して、ファイルを正しい場所にコピーできます。
sudo cp /path/to/404.php /var/www/html/
404 ページを別のフォルダーに保存する場合は、上記のパスをフォルダー パスに置き換える必要があります。
完了
すべての構成を完了すると、ユーザーが見つからないページまたはリソースをリクエストしたときにカスタム 404 ページにジャンプできるようになります。 404 ページでは、より多くの情報をユーザーに提供し、エクスペリエンスを向上させる必要があります。
以上がPHP NGINXで404ページジャンプを設定する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。