很多初學者在做做網站推廣的時候在看一些SEO教程時可能經常見到,優化就要將網站URL靜態化,甚至將這一點列入非常重要的行列。個人不贊成此觀點,選擇動態URL還是靜態頁面,只要根據網站需要就可以了。

為什麼很多SEO(搜索引擎優化)強調使用靜態頁面?

早期由於搜尋引擎Spider的不完善,網站程序不合理,或部分人故意造成一種蜘蛛陷阱(spider traps),導致Spider爬行時進入一個死循環。搜尋引擎為避開這種死循環,減少對動態URL的讀取,特別是帶「?」符號的URL。

隨著搜尋引擎的完善,這種現象目前已經基本得以解決,Spider已經能夠正常並順利的讀取動態URL地址,以及帶「?」符號的URL。但是,目前 對帶過多環境變量(query string)的URL地址(如new.php?a=1&b=2&c=3&d=4……)仍不夠理想(據相關資料稱,Spider 基本不讀取帶3個以上的環境變量的URL)。

 

如果動態URL與靜態頁面存在差別,差別在哪裡?這種差別主要表現在下面兩個方面:

1、Spider爬行效率:如上所說,多重環境變量的URL;Cookie數據導致訪問頁面的變化;給予不同的訪問者Session ID等。這些因素會導致Sipider爬行效率較低,將制約著動態URL在搜尋引擎中的表現。

2、頁面信任問題:這個問題目前還沒有一家搜尋引擎公開表示,對網頁有信任值。但通過本人的實驗及參考相關資料,靜態頁面在搜尋引擎中,同等條件下一般優於動態URL。

靜態頁面在搜尋引擎中優勢有多大?

對於搜尋引擎而言,靜態頁面還是優於動態URL的,但優勢能有多大?樂思蜀認為,差距很小,如果我們再把握好站內鏈接策略,並對URL進行適當的優化處理,這種差距會極小。

我的SEO論壇一直使用的動態URL,而且URL並沒有做太多的優化處理,從2005年開站至今,SEO一詞基本在前1~2位之間。

 

動態URL的靜態化:偽靜態

動態URL在網站目錄中並不存在具體的文件,而是根據用戶請求,從數據庫中返回請求的結果。我們可以把這個過程模擬成靜態頁面或目錄,就是常見的「偽靜態」。

目前主流的很多程序都支持偽靜態,我們也可以根據需要,對程序進行DIY,再對網站環境進行相應設置。Apache下mod_rewrite的重寫 模塊就能很輕鬆的實現,Windows環境下也有rewrite組件。網上關於這方面的教程很多,大家可以搜尋一下,查看相關的資料來實現。

 

動態URL的站內優化策略

如何讓動態URL表現更好,樂思蜀從站內角度提出下面3個要點:

1、導航很重要:完善的站內導航,有利於Spider高效率的爬行。整站盡可能做到:從首頁出發,較重要的位置,不超過3次點擊就能到達;最重要的位置,應該在首頁出現相應的鏈接;必要時,可以單獨製作一個靜態導航頁。

2、製作網站地圖:首先網站內應該有一個網站地圖頁面,將常用位置在這個頁面中做上鏈接,用戶可以最快的瞭解網 站結構,搜尋引擎Spider可以快速高效的對網站爬行;其次XML格式的網站地圖目前已經不僅適用於Google,應盡可能的保持XML地圖更新;最 後,建議製作一份URL列表(urllist.html和urllist.txt),對網站是有益而無害的。

3、URL統一、規範:同一URL出現多個版本(如read.php?id=1和read.php?id=1&page=1),同一位置出現多個URL形式,及大小寫問題等都可能導致在搜尋引擎中出現相似頁面,從而影響網站在搜尋引擎中的表現。

總之,個人認為動態URL不一定比靜態頁面差,只要優化得當,在網站推廣中同樣有好的表現。而且很多只能或最好用動態程序的時候(如論壇、訂單系統等交互性很強的站點),沒必要刻意要求生成HTML,或做成靜態頁面。