2016-11-30 29 views
0

我在我的htaccess文件下面的代碼來處理404碼:404重定向或更好的選擇

ErrorDocument 404 https://www.mywebsite.co.uk/lost.php 
RewriteEngine On 

,當然會返回一個自定義的404頁(正常工作)。

我做了檢查衝切,它說以下內容:

這是一個常見的錯誤設置使用 重定向缺頁處理。缺少的頁面應直接返回404錯誤,而不是 重定向到另一頁面。

本網站不丟失 頁面返回404錯誤HTTP狀態代碼。這很糟糕,因爲像谷歌這樣的搜索引擎可能會將 這個錯誤當成真正的內容頁面。

如果以上不好,處理404錯誤代碼的最佳做法是什麼?我只是想要一個通用的東西,這是一個抓住所有。無需使用301,因爲我的404點只是爲了讓訪問者知道他們正在尋找的內容不存在或者他們犯了錯誤。

如果使用重定向是一個「常見錯誤」應該如何完成?

謝謝你的幫助。

回答

1

這要看情況。如果你的網絡服務器上運行着一個應用程序,它接收每個URL並實現了一些邏輯,它本身必須確定URL是否存在,那麼應用程序應直接返回給定URL下的404錯誤頁面,而不是重定向到另一個頁面,如404.html左右。但是,如果您的網絡服務器使用.htaccess文件處理url請求,則可以設置在無效URL情況下返回的文檔。

+0

馬丁你好,所以基本上404頁我已經設置了就可以了?我認爲這是一個正常的設置,直到我測試我的網站。這是我自學成才的唯一途徑。 – Margate

+1

是的,這樣做絕對可以。 –

2

您需要從404處理程序中刪除https://http://,否則它會強制Apache執行完全重定向而不是內部重寫。

所以,你可以使用:

ErrorDocument 404 /lost.php