无论如何要编写1个单一规则来重定向多个动态URL

时间:2015-12-14 14:10:37

标签: php .htaccess mod-rewrite redirect url-redirection

嘿大家我搜索这个答案,但只能找到单独重定向每个网址的方法。

我的旧网站网址是这样的:

www.domain.com/show_detail.php?item=item_description_of_various_lengths

新网址如下:

www.domain.com/shop/brands/titan/item_description_of_various_lengths/

现在我知道如何以1为单位重定向这些。我使用了以下代码:

RewriteCond %{QUERY_STRING} ^item=item_description_of_various_lengths$ [NC]

RewriteRule show_detail.php http://www.domain.com/product-category/paint-spraying/hvlp-fine-finish/item_description_of_various_lengths/? [R=301,L]

哪个很好用,但是在写了大约200个之后我只是想知道是否有办法将所有以show_detail.php开头的页面重定向到我的主页并称之为一天。 甚至更好的1条规则,只会将所有规则重定向到自动搜索“item_description_of_various_Lengths”短语的搜索页面。

1 个答案:

答案 0 :(得分:2)

您可以使用正则表达式catpure组来动态获取项目的值

RewriteCond %{QUERY_STRING} ^item=([^&]+)$ [NC]

然后将 description_of_v_length 替换为目标网址中的%1?