我正在尝试重定向
domain.com/page?user=something
到
domain.com/page/something
与
RewriteRule ^page?user=(\d[^/]+) /page/$1/ [R=301,L]
由于某种原因,但是没有工作。它似乎只是无视它。当我去domain.com/page?user=something
时没有任何反应。 mod_rewrite已启用,所有其他规则正在执行。我认为这可能是由于URL中的?
,但我可能错了?
答案 0 :(得分:1)
您可以在根.htaccess中使用这两个规则:
RewriteEngine On
# external redirect from actual URL to pretty one
RewriteCond %{THE_REQUEST} /page(?:\.php)\?user=([^\s&]+) [NC]
RewriteRule ^ /page/%1? [R=302,L,NE]
# internal forward from pretty URL to actual one
RewriteRule ^page/([^/.]+)/?$ page?user=$1 [L,QSA,NC]