如何替換請(qǐng)求URL中的文字?
解決方案如下,僅適用于Apache服務(wù)器。
在.htaccess文件中添加以下語(yǔ)句:
RewriteCond? %{REQUEST_URL} ?"string1"
RewriteRule? "(.*)"string1(.*)"? "$1string2$2"? [N,PT]
例如當(dāng)客戶(hù)端發(fā)出請(qǐng)求URL:example.com/string1/abcstring1.html,則轉(zhuǎn)換為目標(biāo)URL:example.com/string2/abcstring2.html。其中[N]標(biāo)記告訴Apache重新執(zhí)行重寫(xiě)規(guī)則,直到RewriteCond失效為止。只要請(qǐng)求URL中包含需要替換的字符串,它就會(huì)一直重復(fù)地執(zhí)行。當(dāng)所有的string1都被替換完畢,則RewriteCond失效。本例子中,RewriteCond執(zhí)行了2次。[PT]告訴mod_rewrite把重寫(xiě)的URL傳送到Apache來(lái)進(jìn)行接下來(lái)的處理工作。
我們都知道,關(guān)鍵詞是否在URL中對(duì)于網(wǎng)站SEO至關(guān)重要。對(duì)于建站初期不注重SEO的站點(diǎn),特別是大型站點(diǎn),本功能真是雪中送炭。
注意:使用本功能時(shí),有時(shí)會(huì)把非目標(biāo)字符也做了修改,假如例子中的“abcstring1”不是目標(biāo)字符,但這個(gè)功能也會(huì)替換了它。
閱讀本文的人還可以閱讀:
改版時(shí),如何保留原鏈接,創(chuàng)建新的URL?