1. 程式人生 > >提高網站在搜尋引擎中的排名

提高網站在搜尋引擎中的排名

在網際網路的海洋中,最重要的就是互聯互通,不被其他網站引用的網站就是“資訊孤島”。“酒好也怕巷子深”,也許這話說起來有點像垃圾郵件廣告,但事實就是這樣。所以如果做網站的目的不是孤芳自賞,就需要積極的推廣自己的網站。通過搜尋引擎推廣自己需要注意以下幾個方面

以量取勝:不一定加入大型網站的分類目錄才是網站推廣,來自其他網站的任何反相連結都是有用的。網站推廣比較經典的方式就是加入比較大型入口網站的分類目錄,比如:Yahoo!,Baidu等。其實這裡有一個誤區:不一定非要加入大型網站的分類目錄才是網站推廣,因為現在搜尋引擎已經不再只是網站目錄的索引,而是更全面的網頁索引,所以無論來自其他網站任何地方的反相連結都是非常有價值的,哪怕是出現在新聞報道,論壇,郵件列表歸檔中。很多大型站點的郵件列表發郵件時,一定注意在自己的簽名中加上自己網站的地址。
Blogger(Weblog的簡稱)們也許最深刻地理解了“連結就是一切”這句話的含義,由於Blog的內容之間有大量的相互連結,因此最經常被引用的 Blog頁面在搜尋引擎中的排名往往比一些大型商業網站的頁面還要高。

以質取勝:被PageRank高的網站引用能更快地提高PageRank。數量只是關鍵因素之一,來自PageRank高的頁面的連結還能更快的提高被連結目標的PageRank,以我的個人網站www.why100000.com為例:我沒有加入任何分類目錄,只是將一些文章投稿在了ZDNet中國上,由於頁面上有文章出處連結,相應網頁和網站整體的PageRank過了一段時間後就有了很大的提升。有時候被什麼樣的網站引用有時候比引用次數多更重要。按照這個原則:能夠名列Yahoo!和Google這樣的大型權威目錄的頭2層是非常有價值的。

注意:不要通過Link Farm提高自身的站點排名:Google會懲罰那些主動連結到Link Farm站點以提高自身排名站點,相應站點的頁面將不會被收入到索引中。但如果你的頁面被別的Link Farm連結了也不必擔心,因為這種被動的連結是不會被懲罰的。

不要吝嗇給其他網站的連結:如果一個網頁只有大量的進入連結,而缺乏匯出連結,也會被搜尋引擎認為是沒有價值的站點。保證你的網站能夠幫助搜尋引擎更準確地判斷哪些是對使用者最有價值的資訊,也就是說如果你的網站只有外部反向連結而沒有匯出連結的話,也會對你的網站在搜尋結果中的表現帶來負面影響。當然網站中連一個匯出連結都沒有的情況非常罕見,除非你是刻意這麼做。正常情況下大家都會自然地在網頁中加上一些其他網站的連結,帶領訪問者去到我們認為重要或能夠提供更多有價值資訊的地方,另外在推廣自己網站之前也許首先需要了解自己網站目前在一些搜尋引擎中的知名度,原理非常簡單。

網站推廣只是手段,如何突出內容、讓需要相關資訊的使用者能夠儘快的找到你的網站才是目的,PageRank高並不代表像Yahoo!這樣的門戶站點就能在所有搜尋結果中排名靠前,因為搜尋引擎的結果是搜尋關鍵詞在頁面中的匹配度和頁面的PageRank相結合的排名結果。因此第二個要點:如何突出關鍵詞。

如何突出關鍵詞:面向主題(Theme)的關鍵詞匹配

    標題設計只是提升關鍵詞密度(keywords density)的一個方面:在現代搜尋引擎在關鍵詞匹配的過程中,匹配的過程不只看當前頁面的內容摘要:很大程度上,不只看這個網頁自己說自己有什麼內容,還要看別人如何連結時,如何描述你的網站。比如查:“十萬個為什麼”,返回結果中有 http://why100000.com 而這個頁面中是沒有中文的,之所以能匹配上,是因為很多連結它的中文網站使用了:<a href="http://why100000.com">十萬個為什麼電腦學習網</a>,所以,這個頁面中不存在的關鍵詞也成為了頁面摘要的一部分。
    所以把握好整個網站的主題風格是非常重要的,越是有和被連結頁面主題相關的連結標題,對被連結頁面越有益處。

不要空著標題:空著<title></title>無異於浪費了最有價值的一塊陣地;傳統的頁面中,HTML頁面中會有類似以下的隱含資訊,用於說明當前網頁的主要內容關鍵字:
    <header><meta name="keyword" content="why100000.com,sogo99.com"></header>
後來由於這種人工新增關鍵詞的方式被濫用,大量網頁中為了提高被搜尋引擎命中的概率,經常新增一些和實際網頁內容無關的熱門關鍵比如:“music mp3 download”等,所以新一代的搜尋引擎已經不再關心頁面標頭檔案中的人工meta keyword宣告,而頁面標題在搜尋引擎的關鍵詞的命中命中過程中往往有著更高的比重,如果一個關鍵詞在標題中命中會比在頁面中命中有更高的得分,從而在相應的搜尋結果排名中更靠前。

標題長度和內容:不要過長,一般在40個字元以內,並充分突出關鍵詞的比重;如果更長的標題搜尋引擎一般會忽略掉,所以要儘可能將主要關鍵詞放在標題靠前的位置。省略掉不必要的形容詞吧,畢竟使用者主要通過名詞來找到需要的內容。標題內容:儘量用一些別人可以通過關鍵詞找到的字眼(也別太過頭,如果標題中的字眼超過1半內容中都沒有,有可能被搜尋引擎排除出索引),因此基於web日誌中來自其他搜尋引擎的關鍵詞查詢統計非常必要。

如果網頁很多的話,儘量使用不同的網頁標題,爭取讓自己網站的內容更多的進入搜尋引擎索引範圍;因為搜尋引擎會根據頁面內容的相似度把一些內容當成重複頁面排除出索引範圍;除了<title></title>外,還可以用<h1></h1>標題行突出內容主題,加強標題的效果;在我的網站設計中:我會把用<h1>[標題]</h1>這樣的模板把標題突出顯示,而不是通過改變字型的方式突出標題。

其他網站設計提示儘量使用靜態網頁:目前能夠像Google一樣對動態網頁進行索引的搜尋引擎還比較少,而即使是Google也更不會索引所有的內容,總體上說Google喜歡新的,靜態的內容。因此無論從效率上講還是方便搜尋引擎收錄,使用內容釋出系統將網站內容釋出成靜態網頁都是非常必要的。比如:
http://www.why100000.com/_ftp/比  http://www.why100000.com/_ftp/Man.php?mode=man&parameter=intro&section=3
更容易進入搜尋引擎的索引。而且在URL中的命中有時候比在標題中還能突出關鍵詞。而且能夠進入Google索引的頁面數量越多越好。可以用類似以下的指令碼統計自己的網站被Google和百度索引的情況。
#!/bin/sh
YESTERDAY=`date -d yesterday +%y%m%d`
LOG_PATH='/home/apache/logs'
grep -i Googlebot $LOG_PATH/access_log|awk '{print $7}' |sort -u>spider/$YESTERDAY.googlebot.txt
grep -i baiduspider $LOG_PATH/access_log|awk '{print $7}' |sort -u>spider/$YESTERDAY.baiduspider.txt

網站目錄結構要扁平,因為每深一級目錄,PAGERANK降低一個檔次。假設首頁是3,其子目錄就是2,更深可能就無法列入評級範圍了。

表現和內容的分離:“綠色”網頁:網頁中的javascript和css儘可能和網頁分離,一方面提高程式碼重用度(也方便頁面快取),另外一方面,由於有效內容佔網頁長度的百分比高,也能提高相關關鍵詞在頁面中的比重也增加了。總之,應該鼓勵遵循w3c的規範,使用更規範的XHTML和XML作為顯示格式便於內容更長時間的儲存。

讓所有的頁面都有能夠快速入口:站點地圖,方便網頁爬蟲(spider)快速遍歷網站所有需要釋出的內容。如果首頁就是用Flash或圖片進入的話,無異於將搜尋引擎拒之門外,除了UI設計的使用者友好外,spider friendly也是非常重要的。

保持網站自身的健康:經常利用壞鏈檢查工具檢查網站中是否有死鏈。

保持網頁內容/連結的穩定性和永續性:在搜尋引擎索引中網頁存在的歷史也是一個比較重要的因素,而且歷史比較久的網頁被連結的機率越高。為了保證自己網頁能夠被比較持久的被其他網站的頁面引用,如果自己網頁中有連結更新時,最好能保留舊的頁面並做好連結轉向,以保持內容的連續性。要知道,把一個網站和內容在搜尋引擎中的排名“培養”的很高是一件非常不容易的事情,誰都不希望好不容易自己的內容被別人找到了,點選卻是“404 頁面不存在”吧,因此站點管理員對自身站點error.log的分析也是非常必要的。檔案型別因素:Google有對PDF, Word(Power Point, Excel), PS文件的索引能力,由於這種文件的內容比一般的HTML經過了更多的整理,學術價值一般比較高,所以這些型別的文件天生就比一般的HTML型別的文件 PageRank要高。因此,對於比較重要的文件:技術白皮書,FAQ,安裝文件等建議使用PDF PS等高階格式存取,這樣在搜尋結果中也能獲得比較靠前的位置。
常常能發現門戶站點的一條新聞往往比其他站點的首頁排名還要靠前。因此一個站點總體PageRank提高了以後,往往自身一些並不重要的內容也會被同那些高PageRank的內容一起帶入被搜尋引擎優先查詢的列表中。這點有些不是很合理,因為這樣經常造成很多大站點的郵件列表歸檔往往比其他站點的首頁PageRank還要高。

知己知彼—站點訪問統計/日誌分析挖掘的重要性:網站設計不僅僅只是被動的迎合搜尋引擎的索引,更重要是充分利用搜索引擎帶來的流量進行更深層次的使用者行為分析。目前,來自搜尋引擎關鍵詞統計幾乎是各種WEB日誌分析工具的標準功能,相信商業日誌統計工具在這方面應該會有更強化的實現。WEB日誌統計這個功能如此重要,以至於新的RedHat 8中已經將日誌分析工具webalizer作為標準的伺服器配置應用之一。

以Apache/webalizer為例,具體的做法如下:
記錄訪問來源:
在Apache配置檔案中設定日誌格式為combined格式,這樣的日誌中會包含擴充套件資訊:其中有一個欄位就是相應訪問的轉向來源: HTTP_REFERER,如果使用者是從某個搜尋引擎的搜尋結果中找到了你的網頁並點選過來,日誌中記錄的HTTP_REFERER就是使用者在搜尋引擎結果頁面的URL,這個URL中包含了使用者查詢的關鍵詞。
在webalizer中預設配置針對搜尋引擎的統計:如何提取HTTP_REFERER中的關鍵詞
webalizer中預設有針對yahoo, google等國際流行搜尋引擎的查詢格式:這裡我增加了針對國內門戶站點的搜尋引擎引數設定
SearchEngine yahoo.com p=
SearchEngine altavista.com q=
SearchEngine google.com q=
SearchEngine    sina.com.cn word=
SearchEngine    baidu.com   word=
SearchEngine    sohu.com    word=
SearchEngine    163.com q=

通過這樣設定webalizer統計時就會將HTTP_REFERER中來自搜尋引擎的URL中的keyword提取出來,比如:所有來自 google.com連結中,引數q的值都將被作為關鍵詞統計下來:,從彙總統計結果中,就可以發現使用者是根據什麼關鍵詞找到你的次數,以及找到你的使用者最感興趣的是那些關鍵詞等,進一步的,在webalizer中有設定還可以將統計結果倒出成CSV格式的日誌,便於以後匯入資料庫進行歷史統計,做更深層次的資料探勘等。以前通過WEB日誌的使用者分析主要是簡單的基於日誌中的訪問時間/IP地址來源等,很明顯,基於搜尋引擎關鍵詞的統計能得到的分析結果更豐富、更直觀。因此,搜尋引擎服務的潛在商業價值幾乎是不言而喻的,也許這也是Yahoo! Altavista等傳統搜尋引擎網站在門戶模式後重新開始重視搜尋引擎市場的原因,看看Google的年度關鍵詞統計就知道了,在網際網路上有誰比搜尋引擎更瞭解使用者對什麼更感興趣呢?需要注意的是:由於Google針對Windows 2000中的IE使用的是UTF-8方式的編碼,因此很多統計有時候需要在UTF-8方式下檢視才是正確字元顯示。從統計中能夠感受到:在使用水平比較高的IT開發人員中Google已經成為最常用的搜尋引擎。而使用百度的使用者也已經大大超過了傳統的搜狐,新浪等門戶站點,因此傳統入口網站在搜尋引擎上的優勢將是非常脆弱的。而從技術的發展趨勢來看,以後還會有更多的利用網際網路媒體做更深層次資料探勘的服務模式出現。

整理:張慶 QQ:9365822
http://www.why100000.com (“十萬個為什麼”電腦學習網)
http://sogo99.com (“搜狗99”網路門戶)