影響網頁收錄的蜘蛛陷阱系列二
三、簡化動態網址
動態網址是指html代碼沒有永久性的儲存在網站服務器文件中的網頁,用戶看見的頁面是網站程序實時創建了html。
由于動態網址中可能包含多個參數(比如“&”),這些參數給蜘蛛程序造成了障礙,因為任何值都能夠傳給變量,蜘蛛無法知道對于同一個網頁到 底能夠顯示多少個不同版本,有時候傳遞個每個參數的不同值表明了這些網頁之間的差別,但這些值與顯示的網頁沒有任何聯系。有時候被用來記錄用戶行為的跟蹤代碼,這樣的網頁如果被蜘蛛程序捕捉到,那么,一個蜘蛛程序可能會看同一個網頁很多遍,這樣大大浪費了蜘蛛程序的時間(利用這些時間可能會查看更多有用的網頁),而且會導致大量重復的網站被收錄。
隨著動態網址越來越多,搜索引擎也對蜘蛛程序進行了升級,目前對于動態網址,蜘蛛程序可能做到:
URL中含有兩個以下的動態參數:如果是這樣,你可以使用 URL重寫(rewrite),也就是經常說的偽靜態技術來解決問題;
URL少于1000個字母:越短的越容易讀,越越容易記憶和理解;
URL中不包含區段標記符:比如“id=”或者“session=”,這些通常是用來記錄用戶行為時候用到的區段標志符,可以使用URL重寫技術來讓這些URL變得更有意義一些;
從列表或者網站地圖鏈接過來的所有有效URL:一些動態URL可以使用很多參數,蜘蛛程序不可能知道網站上有效網頁對應的所有參數,所以需要確保給一些動態網址留有蜘蛛通道。
五、消除頁面顯示的依賴條件
某些網站的開發考慮了一些重要因素,可能需要用戶開啟瀏覽器的某項功能或者采取某些行為才能正常執行,這些對于網頁的用戶體驗損害很大,常見的有:
1、需要 cookie:cookie是儲存在用戶計算機中的信息,網頁可以使用這些數據來了解用戶信息,但是蜘蛛程序不能接受cookie,如果你的網頁必須依賴cookie,建議取消這些功能或使用其他技術來實現搜索引擎與用戶看見相同的網頁。
2、需要下載軟件:蜘蛛程序只能讀懂文本文件,例如html和pdf文件,因為這些文件中含有可供搜索的文字信息,因此當他們遇到需要軟件下載的時候,可能就是繞過去了。所以盡量避免這樣的事情發生,尤其是在網站首頁。
3、要求提供信息:很多網站設計人員要求用戶輸入某些信息或者回答一些問題才允許瀏覽網頁,如果你的網頁需要用戶操作而不是點擊一個標準的超文本鏈接,蜘蛛程序可能會無法理解而轉走。
4、需要Javascript:蜘蛛程序不能執行Javascript,而且一些用戶可能會由于考慮到安全原因將瀏覽器的Javascript關 閉,如果你的網頁在允許顯示之間先要測試Javascript,那么,他就不能向蜘蛛程序顯示,而上面的鏈接也不能讓蜘蛛程序抓取。
四、避免使用JS下拉菜單
蜘蛛程序對JS的理解還不深入,一些在JS存在的鏈接可能無法被蜘蛛程序捕捉到,而往往菜單中的鏈接又是很重要的,所以使用JS下拉菜單的網頁最好使用html重新這些鏈接。
除了用html代碼,還可以使用來使這些重要鏈接被正常捕捉,因為一些舊的瀏覽器不支持 Javascript,或者一些用戶禁用了瀏覽器的這些功能,這樣會導致不能執行網頁上的Javascript代碼,如果下拉菜單需要 Javascript,那么,在不支持或者禁用了的瀏覽中,下拉菜單將不會被正常顯示。
在使用標簽的時候,注意標簽中的html代碼中的每個鏈接最好使用絕對地址。另外在網頁地圖中也加上這些網頁的鏈接,可以更好的保證蜘蛛程序發現他們。
未完待續 …..