不得不承認(rèn)的是,一些大型網(wǎng)站對(duì)中文URL采取謹(jǐn)慎的態(tài)度,僅僅是在一些小的功能比如搜索或者tag標(biāo)簽上使用中文URL,這是可以理解的,因?yàn)榇笠?guī)模的更換URL結(jié)構(gòu)會(huì)使網(wǎng)站降權(quán)甚至被K,而這些大型網(wǎng)站的權(quán)重在各個(gè)行業(yè)內(nèi)基本上已經(jīng)無法撼動(dòng)了,短時(shí)間內(nèi)中小型網(wǎng)站想要依靠優(yōu)化技術(shù)對(duì)這些大網(wǎng)站進(jìn)行超越是不可能完成的任務(wù),所以這些大網(wǎng)站也就沒有必要大規(guī)模更換URL。而對(duì)于小型網(wǎng)站或者是新站來說,使用中文URL絕對(duì)可以使自己的排名提高一個(gè)檔次,完顏亮是怎么說的來著:“提兵百萬西湖上,立馬吳山第一峰!”
困擾中文URL使用者的一個(gè)問題就是亂碼的問題,google以及一些國外的搜索引擎是可以識(shí)別國標(biāo)碼utf-8的中文URL,而對(duì)于gb2312的不識(shí)別,而百度在很長的一段時(shí)間內(nèi)不識(shí)別utf-8的中文URL,但是在今年年初就已經(jīng)支持了utf-8的中文地址,所以現(xiàn)在的解決方法就是把你的網(wǎng)站編碼換成 utf-8,然后統(tǒng)一用urlencode把中文地址格式化成三字節(jié)字符串,這樣所有搜索引擎都可以識(shí)別,但是,有人擔(dān)心萬一百度改回原來那種只識(shí)別gb2312編碼的方式怎么辦,因?yàn)榘俣茸陨淼木幋a就是gb2312的,其實(shí)不用擔(dān)心,這個(gè)完全可以用技術(shù)解決,也就是判斷如果是utf-8的編碼,可以強(qiáng)行轉(zhuǎn)換成gb2312的編碼,這樣就可以保證無論是gb2312還是utf-8,百度都可以識(shí)別了,其具體方法如下:
$url = 'http://www.xiaohao.net/中文/中華文化';
echo urlencode(mb_convert_encoding($url, 'utf-8','gb2312', ))."\n";
echo rawurlencode(mb_convert_encoding($url, 'utf-8','gb2312'))."\n";
運(yùn)行會(huì)發(fā)現(xiàn)編碼已經(jīng)轉(zhuǎn)換了,如果你不喜歡用mb_convert_encoding,也可以用iconv函數(shù),效率會(huì)更高。
謹(jǐn)以此文為祖國慶生,愿偉大祖國永遠(yuǎn)繁榮富強(qiáng)。