在用thinkphp開發項目的時候,會額外的處理404錯誤頁面,可是咱們不少的開發人員,在處理404錯誤頁面的時候,處理方式都是不對的。php
普通處理404的操做是經過 $this->error();thinkphp
$this->error(); exit;
這種處理錯誤頁面,須要定義模板:優化
注意這裏:這裏報404錯誤是因爲沒有這個模板,纔會報404錯誤,網站
可是若是咱們定義了這個模板:注意看這個狀態this
這個狀態就是 200 ,雖然也能處理錯誤頁面,並且在使用上沒有任何問題,可是若是考慮優化就不是這麼回事兒了。spa
網站優化對於訪問這個不存在的頁面,若是返回的狀態是 200 ,說明是正常的,並且可能這個頁面會被收錄。若是你的網站有100個不存在的頁面,返回的狀態是 200 ,那麼這100個頁面都有可能被收錄,由於它的狀態碼是200,可以正常訪問,因此這種狀況就是不合理的。code
正確的作法應該是返回404的狀態碼:blog
header("HTTP/1.0 404 Not Found"); $this->display('error_404');
注意看這樣的狀態碼:就是404的錯誤狀態碼,這種操做纔是正確的:開發
技術提供:昆明網站建設get