Regex 页的永久重定向取决于参数

Regex 页的永久重定向取决于参数,regex,apache,.htaccess,mod-rewrite,redirect,Regex,Apache,.htaccess,Mod Rewrite,Redirect,我想把www.mysite.com/abc/mypage.php?id=123重新连接到www.mysite.com/newpage.htm 我在我的.htaccess文件中尝试过这个,但不起作用。(我刚拿到404) 正确的语法是什么?否您无法使用重定向指令匹配查询字符串。您可以改用mod_rewrite: RewriteEngine On RewriteCond %{THE_REQUEST} ^[A-Z]{3,}\s/+abc/mypage\.php\?id=123[&s] [NC]

我想把www.mysite.com/abc/mypage.php?id=123重新连接到www.mysite.com/newpage.htm

我在我的.htaccess文件中尝试过这个,但不起作用。(我刚拿到404)


正确的语法是什么?

否您无法使用
重定向
指令匹配查询字符串。您可以改用
mod_rewrite

RewriteEngine On

RewriteCond %{THE_REQUEST} ^[A-Z]{3,}\s/+abc/mypage\.php\?id=123[&s] [NC]
RewriteRule ^ /newpage.htm? [R=302,L]
试试这个:

# do this once per htaccess
RewriteEngine on

RewriteCond %{QUERY_STRING} ^id=123$
# to redirect permanently
RewriteRule ^/?abc/mypage\.php$ /newpage.htm [R=301,L]
请记住,
[R=302]
标志用于临时重定向

# do this once per htaccess
RewriteEngine on

RewriteCond %{QUERY_STRING} ^id=123$
# to redirect permanently
RewriteRule ^/?abc/mypage\.php$ /newpage.htm [R=301,L]