ホームページ > バックエンド開発 > PHPの問題 > PHP NGINXで404ページジャンプを設定する方法

PHP NGINXで404ページジャンプを設定する方法

PHPz
リリース: 2023-04-19 13:49:06
オリジナル
1521 人が閲覧しました

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 サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート