這是繼之前的《5種手段提升谷歌對網站的信任度》,第二篇作品,很高興第一次寫SEO相關文章就被收錄了。
回到主題,有些網站常常因為需要進行常規維護或者因為某些原因(黑客)而不得不臨時關閉,如果用戶或者搜索引擎在這個時候訪問臨時關閉的網站,這將會影響網站的聲譽或者排名流量。
因此做好網站臨時關閉的一些工作,是所有SEOs的必備功課。
下面我將教大家怎么處理好網站臨時關閉時跟用戶還有搜索引擎的一些三角關系!
讓用戶與蜘蛛知道網站正在維護
當一家餐廳的老板,因為某些原因不得不臨時關閉餐廳,老板會在餐廳門口貼公告,告知顧客餐廳臨時關閉以及恢復營業的時間,這樣顧客就不會誤以為餐廳倒閉,而不再次光臨。同樣的道理也可以套用在網站上,如果一個網站因為某些原因必須臨時關閉,那么站長有責任通知蜘蛛還有用戶,并告知恢復的時間,這樣蜘蛛還有用戶才會再次訪問網站,而不是誤以為網站已經永久關閉。
但是怎樣做好告知工作,就不像餐廳那樣貼貼告示就能搞定,網絡的世界比較復雜,因此告知用戶與蜘蛛是一名藝術,下面我們列舉兩個站長朋友經常犯的錯誤。
錯誤一,網站關閉沒有告知
有些站長朋友,沒有做好告知工作,隨隨便便就把網站關閉,導致用戶以及蜘蛛訪問時,顯示404頁面。
最糟的情況是,用戶以及蜘蛛會誤以為網站已經倒閉,而不會再次光臨,就跟餐廳一樣,關門,沒有貼公告,同樣的其顧客會以為餐廳已經倒閉了,下次不會再來了。
錯誤二,單一頁面告知
有些站長則會制作一個單一頁面,告知用戶網站正在維護,并將全站其他的頁面都指向這一頁面,
這也是非常不智的行為,因為這樣做只告知了用戶,而沒有通知蜘蛛,這樣蜘蛛只會以為其他頁面被刪除了,只剩下這個頁面。
在詳細介紹網站臨時關閉時的SEO處理步驟前,我們先復習下幾個SEO最常碰到的HTTP狀態碼
SEO過程中最常見的HTTP狀態碼有:
200 - 服務器成功返回網頁
301- 請求的網頁已永久移動到新位置。當URLs發生變化時,使用301代碼。搜索引擎索引中保存新的URL。
302 -請求的網頁臨時移動到新位置。搜索引擎索引中保存原來的URL。
404 - 請求的網頁不存在
503 - 服務器目前無法使用(由于超載或停機維護)。通常,這只是暫時狀態。
如何告知用戶以及蜘蛛網站正在維護?
如果我們網站臨時關閉,必須告知用戶以及蜘蛛,讓用戶跟蜘蛛知道網站只是臨時關閉,而不是永久關閉,這樣用戶跟蜘蛛就會隔斷時間再次訪問網站,具體做法是創建一個返回503狀態的文件。
1. 創建一個503.php的文件,并把它放到服務器的根目錄
<?php
header("HTTP/1.1 503 Service Temporarily Unavailable");
header("Status: 503 Service Temporarily Unavailable");
header('Retry-After: Sat, 8 Oct 2012 18:27:00 GMT");
?>
<!DOCTYPE HTML>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>網站名稱</title>
</head>
<body>
<h1>網站名稱</h1>
<p>網站維護中</p>
<p>將于2012/10/8恢復</p>
</body>
</html>
第一二句告知搜索蜘蛛網站處理暫時關閉狀態,第三句告知搜索蜘蛛,網站將于2012年10月8日18:27從新開放,注意:這里用的是格林威治標準時間。
但是光放一個503信息到服務器里還是不夠的,蜘蛛會訪問網站不同的頁面,因此我們必須引導所有的蜘蛛到503.php這個頁面,讓蜘蛛知道,整個網站處于臨時關閉中,而不是個別頁面。
如果站長使用的是Apache/Linux服務器,我們只需在.htaccess設置一下,引導所有的蜘蛛到505.php頁面,這里我們要使用302跳轉,注意:在這里千萬不要使用301跳轉,因為301是永久的,在這種情況下會毀滅掉整個網站。
2.引導蜘蛛到503.php
將下面這段代碼保存到.htaccess文件,并上傳到網站根目錄
Options +FollowSymLinks
RewriteEngine On
RewriteBase /
RewriteCond %{REMOTE_ADDR} !^00\.00\.00.\.00
RewriteCond %{REQUEST_URI}!^/503.php [NC]
RewriteRule ,* /503.php [R,L]
最后一行的[R, 告知蜘蛛,這個是302跳轉,屬于暫時的。
這樣我們就完成了網站臨時關閉的部署,可以放心關站了!