我需要重定向来自:
的流量example.com/profilepage.php?profileid=123456
到
example.com/profile-page.php?profileid=123456
注意:唯一不同的是新连字符
我尝试了几种没有运气的变种,包括
RewriteRule ^/?profilepage.php?profileid=([^/]+)/?$ /profile-page.php?profileid=$1 [L,QSA]
RewriteRule ^/?profilepage.php?profileid=([^/]+)/$ /profile-page.php?profileid=$1 [L,QSA]
RewriteRule ^/?profilepage.php?profileid=([^/]+) /profile-page.php?profileid=$1 [L,QSA]
正如您所看到的,我不确定在profileid正则表达式之后要做什么
答案 0 :(得分:1)
尝试这样的事情。您必须明确匹配QUERY_STRING
<强>问题:强>
1。您应该将查询字符串与
匹配%{QUERY_STRING}
2。将正则表达式从此
([^/]+)
更改为(\d+)
注意:强>
确保您的匹配ID位于
%1
而不是$1
您可以查看.htaccess
here
RewriteEngine on
RewriteCond %{QUERY_STRING} ^profileid=(\d+)$
RewriteRule ^profilepage\.php$ /profile-page.php?profileid=%1 [L,R]
答案 1 :(得分:1)
无需测试查询字符串,默认情况下保持不变 您可以使用:
RewriteEngine on
RewriteRule ^profilepage\.php$ profile-page.php [NC,L,R=301]