各位站長都懂,網站如果沒建設好,最好的方式是未建設的頁面返回503狀態碼,這樣可以告訴搜尋引擎該頁面臨時不可訪問,如果恢復訪問了,蜘蛛會立馬恢復爬取。具體百度對503狀態碼的解釋是:
503:503返回碼的含義是“Service
Unavailable”,百度會認為該網頁臨時不可訪問,通常網站臨時關閉,頻寬有限等會產生這種情況。對於網頁返回503,百度spider不會把這條url直接刪除,短期內會再訪問。屆時如果網頁已恢復,則正常抓取;如果繼續返回503,短期內還會反覆訪問幾次。但是如果網頁長期返回503,那麼這個url仍會被百度認為是失效連結,從搜尋結果中刪除。
什麼情況下適合設定503狀態碼:
最近有很多人問我怎麼讓網站返回503狀態碼,很多人網站是租用虛擬空間所有隻能一個頁面一個頁面的去操作,比較麻煩。要麼就請伺服器提供商代為設定。網站臨時無法訪問原因很多,有些是因為備案號給取消了,有些是因為相關部門要求網站內容整改,有些是因為網站沒建設好需要關閉,各種各樣的原因需要臨時關閉網站,如果直接採用關閉網站的做法的話很有可能造成網站從搜尋引擎刪除,對我們之前所做的工作那是一個打擊。
兩會期間我維護的兩個政府網站應政府要求需要關閉網站,所以我才去找尋各種讓伺服器返回503的辦法。
503解決辦法1:(單頁返回503)
網上找的最常見的辦法也是最多的就是自定義一個程式碼檔案,該程式碼可以用PHP
、ASP、以及任何語言書寫,上傳到網站跟目錄,然後把網站的預設首頁更改為這個檔案。
這樣能保證訪問首頁能返回503狀態碼。這個做法適合哪些某些頻道沒建設完全需要返回503的網站,不適合整站返回503,如網站整站要求臨時關閉。
單頁返回503操作流程:
以下是PHP程式碼操作首頁檔案返回503距離:其他程式碼請各位自行去百度一下找尋答案。
第一步:
新建一個PHP檔案,如我們取名為503.php ,再該檔案裡面寫上如下程式碼:
ob_start();
header(‘HTTP/1.1 503 Service Temporarily Unavailable’);
header(‘Status: 503 Service Temporarily Unavailable’);
header(‘Retry-After: Sat, 29 Dec 2012 18:27:00 GMT’);
header(‘X-Powered-By:’);
?>
<!DOCTYPE HTML PUBLIC ”-//IETF//DTD HTML 2.0//EN”>
Service Temporarily Unavailable
第二步:上傳該檔案到網站跟目錄。
第三步:設定網站的預設訪問頁面為:503.php
第四步:測試網站首頁是否真的返回503狀態碼。
503解決方案2:(全站返回503狀態碼)
以下介紹IIS伺服器的配置,對於阿帕奇伺服器我不是很明白,希望各位阿帕奇伺服器管理者得出結論後和我交流,增加我知識面。
我也是找尋了很多答案,通過網上搜索找尋,大多數方案只是以上單頁的503處理,並沒有503全站的處理,對於503錯誤,他還是不可自定義錯誤,屬於伺服器報錯。網路上的相關文章都是出現503的伺服器錯誤的解決辦法,並沒有怎麼配置503報錯,因為503不像404,301這些一樣是屬於使用者自定義錯誤。那麼我的思路來了,1.既然不能自定義配置那麼我們可以人為的設定伺服器錯誤讓伺服器報錯。2.通過配置檔案如rewriter伺服器重寫可以固定伺服器報錯。
以下主要介紹自定義設定伺服器錯誤讓伺服器報錯的辦法,對於rewriter重寫功能稍後研究,同時也希望有好友能去研究告訴我rewriter的配置方式,多謝。
IIS介面大夥不會陌生:
我的全站返回503狀態碼做法思路是:為我的需要設定的站點建立獨立的應用程式池,然後把該站點設定來使用這個應用程式池,確保網站能正常訪問,然後單獨關閉該池。那麼網站運營的時候就會直接全站報503錯誤。。這樣的做法適合短時間臨時關閉全站的網站。
下面介紹下配置步驟:
第一步:滑鼠右鍵新建立一個應用程式池
第二步:把需要處理的網站的應用程式池更改為剛才建立的池。
第三步:關閉該應用程式池。
這樣就會整站返回503錯誤。