【发布时间】:2016-11-18 09:36:23
【问题描述】:
我用.htaccess重写了这个模式下查询字符串生成的一个动态url类别:
RewriteEngine On
RewriteRule ^id1-([^-]*)-id2-([^-]*)$ /page.php?id1=$1&id=$2 [L]
现在我的重写工作正常,例如,以下 url 驱动到同一页面:
http://www.mysite.it/id1-01234-id2-56789
http://www.mysite.it/page.php?id1=01234&id2=56789
但现在我想要一个重定向 301,从第二种类型到第一种类型,用于所有动态 url。例如:
来自
http://www.mysite.it/page.php?id1=01234&id2=56789
到
http://www.mysite.it/id1-01234-id2-56789
下面的方法不行:
RewriteEngine On
RewriteRule ^id1-([^-]*)-id2-([^-]*)$ /page.php?id1=$1&id=$2 [L]
RewriteCond %{QUERY_STRING} (^|&)id1=$1($|&)
RewriteCond %{QUERY_STRING} (^|&)id2=$2($|&)
RewriteRule ^page\.php$ /id1-id2? [L,R=301]
哪里出错了?
你能帮帮我吗?
【问题讨论】:
-
ID 总是只有数字?