簡體   English   中英

不存在的動態URL的404錯誤處理

[英]404 error handling for a non-existing dynamic URL

現在,我正確設置了.htaccess設置:

ErrorDocument 404 /404.php

每當我訪問不存在的頁面(如mysite.com/g.php)時,它都會重定向到404.php,標題顯示404狀態。

每當有人嘗試訪問不存在的故事時,例如mysite.com/story/123456,404狀態就會顯示在標題中,但不會重定向到404頁面。

每當故事不存在時,我都會使用以下代碼:

if ($result == 0) { header("HTTP/1.0 404 Not Found"); exit();}

我究竟做錯了什么?

提供錯誤文件的完整路徑:

ErrorDocument 404 http://yourdomain.com/404.php

好的,我已經解決了這個問題。

此代碼將顯示404錯誤,然后包含404頁以顯示頁面:

header("HTTP/1.0 404 Not Found"); include '404include.php'; exit();

這是設置http響應狀態的正確方法:

<?php
// ...
if ($result == 0) { 
    http_response_code(404);
    exit();
}

與HTTP服務器主機配置中的ErrorDocument 404 /404.php一起(或者,如果確實需要,在動態配置文件( .htaccess )中)應該可以實現您的預​​期。

相應的文檔: http : //php.net/manual/zh/function.http-response-code.php

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM