正在阅读:

如何替换请求URL中的文字?

5,165

以下解决方案,仅适用于Apache服务器。

在.htaccess文件中添加以下语句:

RewriteCond %{REQUEST_URL} "string1"

RewriteRule "(.*)"string1(.*)" "$1string2$2" [N,PT]

例如当客户端发出请求URL:example.com/string1/abcstring1.html,则转换为目标URL:example.com/string2/abcstring2.html。其中[N]标记告诉Apache重新执行重写规则,直到RewriteCond失效为止。只要请求URL中包含需要替换的字符串,它就会一直重复地执行。当所有的string1都被替换完毕,则RewriteCond失效。本例子中,RewriteCond执行了2次。[PT]告诉mod_rewrite把重写的URL传送到Apache来进行接下来的处理工作。

我们都知道,关键字是否在URL中对于网站SEO至关重要。对于建站初期不注重SEO的站点,特别是大型站点,本功能真是雪中送炭。

注意:使用本功能时,有时会把非目标字符也做了修改,假如例子中的“abcstring1”不是目标字符,但这个功能也会替换了它。

上一节[ 3.7 ]如何将无效的URL重定向到其他页面

下一节[ 3.9 ]改版时,如何保留原链接,创建新的URL