先說一下什么是404?
網站404是服務器對ua請求一個不存在或已刪除頁面返回的一個"狀態碼", 判斷一個404頁面不是看它長的像不像404頁, 而是要看返回碼, 所以谷歌里面有個"軟404"的概念.
更多網頁返回碼的意思請自行度娘.
404頁面的重要性
404不重要嗎? 我覺得很重要, 如果要寫一個網站最先做的部分我的建議就是記錄錯誤頁面功能, 為什么呢? 記錄/發現并及時改正錯誤是一個網站正常運行的基礎. 當然我們也可以通過查看網站日志來找到這些錯誤.
404對搜索引擎的影響比較大, 搜索引擎檢查到某個頁面返回404代碼就會不會收錄這個頁面, 如果是已經收錄的頁面蜘蛛在重新抓取的時候發現返回404就會從搜索引擎中刪除這個已經收錄的頁面.
合理的設置404頁面有利于增加網站體驗
對于用戶: 一個比較好的404頁面引導可以避免用戶流失降低跳出率, 這里要注意, 有的朋友在返回404碼的同時做了轉跳, 這時候ua獲取到的可能會是302或200等代碼, 請用返回碼工具檢查, 正如上面我所提到的, 404是個返回碼, 而頁面的呈現樣式可以是五花八門的.
對于搜索引擎: 搜索引擎不會收錄404碼的頁面; 對于已經收錄的頁面搜索引擎再次抓取發現返回404會刪除這個已經收錄的頁面. 如果網站突然出現大量的404頁面請用百度站長平臺的刪除死鏈工具提交死鏈, 以免影響蜘蛛對網站的體驗.
怎樣找出網站中的404錯誤?
1. 最直接的方法: 查看網站的訪問日志;
2. 如果網站有記錄404的統計可以方便很多.
對于網站中大量404死鏈的解決:
如上面我們提到的, 大量404影響用戶和搜索引擎的體驗, 提交死鏈刪除很有必要.
收集死鏈是個復雜的問題, 目前百度還沒有通配符的方式提交死鏈.
· 如果站點同目錄下的死鏈可以根據死鏈的url規則來判斷并找出這些死鏈;
· 對于泛域名解析導致的死鏈, 每個泛域名都是一個相對獨立的站點, 少量的收錄可以用手工的方式來收集, 但是大量收錄只能借助第三方工具從百度都搜索引擎中抓取出來.
404頁面設置舉例:
以php為例, 用.htaccess自定義一個404頁面
RewriteEngine on
RewriteBase /
ErrorDocument 404 /404err.php
那么在這個404err.php頁面里面我們可以設置成自己想要的界面, 并統計記錄錯誤頁的URL,方便我們查看并解決問題.
<?php
header('HTTP/1.1 404 Not Found');
header("status: 404 Not Found"); //返回404錯誤
//注意這里不要用header("Location...")轉跳,否則返回碼是302而不是404
?>
<html>
....這里弄上要顯示的界面
</html>
對于改版導致的死鏈
改版導致舊的url失效, 這時候需要用正確的方法來處理, 用301永久轉跳到新的url 可以把我們從搜索引擎的損失降到最低, 在站長平臺里的改版工具里面把新舊url提交, 以確保舊的url收錄權重轉移到新的url上. 要注意301對搜索引擎來說需要很長一段時間去更新, 所以301轉跳要保持很長一段時間.
養成查看網站日志的習慣很重要.
以發現的實際案例為例:
某客戶網站用.htaccess對網站的url重寫, 百度抓取并能夠成功收錄, 但是在檢查網站日志中發現了大量百度蜘蛛重新抓取時返回404頁面, 仔細檢查發現對url重寫的時候沒有對轉碼進行設置, 導致斜杠等參數被轉碼后不能正確識別所以返回404, 知道問題的所在也就可以順利解決.
評論(0人參與,0條評論)
發布評論
最新評論