一、若是使用普通的純靜態頁面,在httpErrors中配置的話,返回的status code是200,不會是對應的錯誤碼404。只能使用,aspx或mvc頁面,加入,這樣就會返回的時候就會顯示404錯誤碼了。返回200的時候,搜索引擎會認爲這是一個正常的網頁,會被收錄,這是不正常的,所以必需要返回404錯誤碼。html
Response.StatusCode = 404;
二、在mvc代碼中,若是查詢數據庫沒有查到跳轉到404頁面,能夠使用,而不是這種數據庫
return new HttpStatusCodeResult(404);
//錯誤作法
return Redirect("/html/404.html");
三、關於錯誤頁面的配置,最好是都在httpErrors中配置,而不是跳轉,在httpErrors中配置的話,在出錯的時候瀏覽器地址欄中的地址不會變,而跳轉的話地址會變。瀏覽器
四、錯誤頁面,最好不要使用靜態頁面,這樣會返回200,這是不正確的,能夠使用aspx或者mvc,這樣返回的status code就能夠設置爲對應的錯誤碼了。mvc