iis 301轉向和網址正常化總結分析_網站應用程式
來源:互聯網
上載者:User
寫了網址正常化後,尚奇公司的柳先生建議再深入討論一下301轉向/重新導向。下面就談談我所瞭解的301轉向在搜尋引擎最佳化方面的應用。
什麼是301轉向?
301轉向(或叫301重新導向,301跳轉)是當使用者或搜尋引擎向網站伺服器發出瀏覽請求時,伺服器返回的HTTP資料流中頭資訊(header)中的狀態代碼的一種,表示本網頁永久性轉移到另一個地址。
其它常見的狀態代碼還包括,200表示一切正常,404網頁找不到,302暫時轉向,等等。
為什麼要做網址轉向?
除了前面介紹過的網址正常化問題外,還有很多需要做網址轉向的情形。比如,為保護著作權,你擁有不同TLD的多個網域名稱:
company.com
company.net
company.org
company.com.cn
company.cn
等等。
很自然這些網域名稱全部指向一個網站。如用company.com為主網域名稱,其它網域名稱就可以轉向到company.com。
或者你註冊了公司全稱網域名稱longcompanyname.com,但太長 ,你也註冊了縮寫網域名稱方便使用者記住lcn.com,其中一個做主網域名稱,另一個就可以轉向到主網域名稱。
為什麼要用301轉向?
網址轉向方法主要包括:301轉向,302轉向,JavaScript轉向,PHP/ASP/CGI轉向,META REFRESH網頁META重新整理,等。302轉向可能會有URL正常化問題。其它方法都是常用的作弊手法,當然不是說不可以正當地用,方法本身沒有錯,但被作弊者用多了,搜尋引擎對這些可疑的轉向都很敏感。何必冒險呢。
當網頁A用301重新導向轉到網頁B時,搜尋引擎可以肯定網頁A永久的改變位置,或者說實際上不存在了,搜尋引擎就會把網頁B當作唯一有效目標。好處是,第一,沒有網址正常化問題,第二,也很重要的,網頁A的PR網頁層級會傳到網頁B。
很多時候其它網站會連結到
http://domainname.com
http://www.domainname.com/index.html
http://domainname.com/index.html
而不是你希望的
http://www.domainname.com
這樣連結的PR也會傳遞到所有URL,如果你用301轉向把前三個URL轉到
http://www.domainname.com
PR也就集中在網頁http://www.domainname.com了。
怎樣判斷網站有網址正常化問題?
英語中有句話,東西沒壞就別修理。很多網站沒做301轉向排名也沒影響,那就別動它。
如果你覺得網站排名沒有預想的好,可以看看是否有網址正常化問題:
1) 查一下這些URL是否都有差不多的PR值和網頁快照:
http://domainname.com
http://www.domainname.com/index.html
http://domainname.com/index.html
http://www.domainname.com
如果是,那可能有問題。
2)搜一下site:domain.com看是否結果中有多個首頁版本。
3)你的網站是否在Google有大量網頁被標為“ 補充材料”(Supplemental Result)。一般認為被歸為“ 補充材料”是網址正常化問題的徵兆。
怎樣做301轉向
如果你用的是Unix/Linux主機,可以用檔案(Unix/Linux中用於目錄特定指令如密碼,轉向,錯誤處理等的檔案)。
比如把/old.htm轉到http://www.domain.com/new.htm,可以用這個指令:
redirect 301 /old.htm http://www.domain.com/new.htm
或
redirect permanent /old.htm http://www.domain.com/new.htm
如果要把所有http://domain.com形式的URL用301重新導向轉到 http://www.domain.com,包括:
http://domain.com/about.htm
轉到 http://www.domain.com/about.htm
及
http://domain.com/dir/index.htm
轉到 http://www.domain.com/dir/index.htm
等等,還要用到mod_rewrite:
Options +FollowSymLinks
RewriteEngine on
RewriteCond %{HTTP_HOST} ^domain.com [NC]
RewriteRule ^(.*)$ http://www.domain.com/$1 [L,R=301]
如果你用的是 Windows主機,應該在控制台做301轉向設定。
補充 :在網址正常化評論裡回答石頭王的問題,可能對大家有協助:
據我所知,HTML無法做301轉向。在HTML裡只能做JS或META REFRESH,但不是301轉向。HTML一被讀取,就已經返回200 OK狀態代碼了。
如果你的頁面是ASP或PHP還可以做301轉向:
ASP:
<%@ Language=VBScript %>
<%
Response.Status=”301 Moved Permanently” Response.AddHeader “Location”, ” http://www.domain.com”
>
PHP:
Header( “HTTP/1.1 301 Moved Permanently” );
Header( “Location: http://www.domain.com” );
?>
另外,DOThtaccess檔案只是一個普通文字檔案,你用Notepad建這個檔案,放上指令,存在你帳號的根目錄下就行了。不需要修改Apache。
作者: Zac@SEO每天一貼
原載: 中新虛擬機器主機
著作權。轉載時必須以連結形式註明作者和原始出處及本聲明。