私の PHP コードで 404 エラーが発生しないのはなぜですか?

Patricia Arquette
リリース: 2024-11-11 06:25:02
オリジナル
210 人が閲覧しました

Why Doesn't My PHP Code Produce a 404 Error?

PHP アプリケーションの 404 エラーの難題を解決する

PHP 開発では、リソースが使用できないことを示すために 404 エラーを返す必要がある場合があります。見つかった。ただし、次のようなコードが意図した 404 エラーを生成しない状況が発生する場合があります。

if (strstr($_SERVER['REQUEST_URI'],'index.php')) {
    header('HTTP/1.0 404 Not Found');
}
ログイン後にコピー

404 エラーが表示される代わりに、空白のページが表示される場合があります。問題は、Web サーバーと PHP が 404 応答を処理する際にどのように対話するかにあります。

提供された回答で説明されているように、

  • Web サーバーは通常、404 エラー自体を処理し、指定された 404 ページを表示します。ただし、
  • PHP は、リクエストを受信して​​ 404 ヘッダーを送信することで、このプロセスをオーバーライドします。

これにより、Web サーバーは独自の 404 処理メカニズムをバイパスします。その結果、意図した 404 ページの代わりに、Web サーバーは PHP が生成したものを送信します。この場合、空のページが送信されます。

この問題を解決するには、PHP は Web サーバーが起動する前に 404 ヘッダーを送信する必要があります。 PHPを処理しています。これにより、Web サーバーが応答を適切に処理し、適切な 404 ページを表示できるようになります。

修正されたコード:

header('HTTP/1.0 404 Not Found');
exit(); // To prevent any further PHP processing
ログイン後にコピー

以上が私の PHP コードで 404 エラーが発生しないのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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