Internet上網(wǎng)站數(shù)量的增多,網(wǎng)站的宣傳越來越多地依賴搜索引擎的搜索結(jié)果,怎樣讓搜索引擎更好地為站點(diǎn)服務(wù)與提高站點(diǎn)的訪問量有著非常密切的關(guān)系。搜索引擎并非是上帝的贈送給Internet產(chǎn)物,搜索引擎其本身既是站點(diǎn),同時(shí)也是由各個(gè)程序來建設(shè)的。而各種搜索引擎一般都使用一種稱為搜索引擎機(jī)器人的技術(shù),這種機(jī)器人會根據(jù)一定規(guī)則的在Internet上訪問站點(diǎn),并把有價(jià)值的頁面收集到搜索引擎的緩存數(shù)據(jù)庫保存。一旦有用戶來搜索,那么搜索引擎會直接在其緩存中搜索結(jié)果,并將結(jié)果報(bào)給用戶。
搜索機(jī)器人的查找規(guī)則比較復(fù)雜,但是其中有一個(gè)很重要的規(guī)則,就是搜索機(jī)器人對靜態(tài)頁面的處理能力要強(qiáng)于動態(tài)頁面。一般情況下搜索機(jī)器人簡單的把靜態(tài)頁面理解為擴(kuò)展名成.html或者.htm的頁面,而將擴(kuò)展名是.ASP、.PHP及.CGI的頁面理解成動態(tài)頁面。換言之如果一個(gè)站點(diǎn)都是.html頁面,那么它被搜索引擎全文搜到的可能性就要比.PHP的頁面高幾個(gè)數(shù)量級,當(dāng)然因此而來的訪問量也會高出很多。
如何把自己站點(diǎn)的內(nèi)容全都靜態(tài)頁面化,最簡單的做法自然是每個(gè)頁面都用頁面設(shè)計(jì)軟件直接作成靜態(tài)頁面,這對小型站點(diǎn)不是難事,但是對頁面總數(shù)上萬的大中型站點(diǎn),都用手工的靜態(tài)頁面設(shè)計(jì)就會帶來高昂的成本和保存、修改上的困難。在這種情況下,資金雄厚的大網(wǎng)站會采用能在后臺生成.html文件的內(nèi)容管理(CMS)系統(tǒng)管理。無論是手工做的.html文件,還是后臺生成的.html文件,都能實(shí)現(xiàn)真正意義上的靜態(tài)頁面。
但仍有相當(dāng)數(shù)量的中型站點(diǎn)采用動態(tài)發(fā)布的CMS系統(tǒng),動態(tài)系統(tǒng)對網(wǎng)頁的更新效率很高,可在后臺發(fā)排的同時(shí)在前臺顯示,缺點(diǎn)是要消耗相當(dāng)量的服務(wù)器資源,同時(shí)得到一堆擴(kuò)展名為.ASP.PHP的頁面。要完全替換CMS系統(tǒng)并不容易,而且具有靜態(tài)頁面后臺生成功能的成熟CMS系統(tǒng)價(jià)格都很高昂。
動態(tài)CMS系統(tǒng)有無簡單獲取.html文件擴(kuò)展名的方法?當(dāng)然有,采用URL重寫轉(zhuǎn)向功能。
對URL重寫轉(zhuǎn)向的支持,在Apache服務(wù)器上由一非缺省模塊(mod_rewrite)來完成,這個(gè)模塊的功能很強(qiáng)大,同時(shí)也很煩瑣。而在IIS下也同樣有類似的模塊,分別是ISAPI REWRITE及IIS REWRITE。無論是在Apache下還是在IIS下,重寫轉(zhuǎn)向的語法都基于正則表達(dá)式,只有少量的不同。當(dāng)然對一般的應(yīng)用,沒必要把所有手冊和說明文檔翻熟,下面以一個(gè)虛擬的httpwww.sheyee.com動態(tài)站點(diǎn)為例介紹一些簡單的方法,讀者可以根據(jù)自己網(wǎng)站的情況做調(diào)整。
在IIS的安裝isapirewrite的情況下只須設(shè)置:RewriteRule content(d+).html content.phpsort=$1 [N,I]
這樣就將:content3.html 這樣的請求映射成為content.phpsort=3
然后通過:httpwww.shi8.comcontent3.html 同樣能訪問到剛才的頁面。
另一個(gè)更通用的能將所有的動態(tài)頁面做參數(shù)映射的表達(dá)式是:
RewriteRule (..php)([^])([^])([^])(.+) $1(2$2&)$3=$45$5 [N,I]
這樣就把httpwww.shi8.comfoo.phpa=A&b=B&c=C表現(xiàn)成httpwww.shi8.comfoo.phpaAbBcC。
當(dāng)然用URL重寫轉(zhuǎn)向而得的.html的URL實(shí)質(zhì)上還是個(gè)動態(tài)頁面,只是搜索引擎上的機(jī)器人及瀏覽器上的鏈接與正常的靜態(tài)頁面一摸一樣,URL對用戶的親和度非常高。即便是在用模塊方式運(yùn)行的Apache下,這樣或多或少都會有一些性能上的損失。同時(shí)如果真的把論壇這種更新非??斓膬?nèi)容也讓Google搜索進(jìn)去并不能方便用戶,有時(shí)候還會帶來很多負(fù)面影響。所以URL重寫轉(zhuǎn)向最合適的用途是一些中小型CMS動態(tài)頁面發(fā)布平臺,以便讓搜索引擎能記錄下主頁內(nèi)容從而讓更多的人能搜索到。