htaccess 301重定向动态URL
我正在将我的网站移至新域。需要重定向页面
来自
old-site.com/oldpage.php?id=X
到
new-site.com/newpage-X
(X 是数字)
为什么这个规则不起作用?
RewriteEngine on
RewriteRule ^oldpage.php?id=(.*)$ http://new-site.com/newpage-$1 [R=301,L]
I am moving my site to new domain. Need to redirect pages
from
old-site.com/oldpage.php?id=X
to
new-site.com/newpage-X
(X is number)
Why this rule does not work?
RewriteEngine on
RewriteRule ^oldpage.php?id=(.*)$ http://new-site.com/newpage-$1 [R=301,L]
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
RewriteRule
只进行操作在 URL 路径 上而不是 URL 查询上。您需要使用RewriteCond
指令来测试 URL 查询 (%{QUERY_STRING}
)。所以尝试这个规则:这个规则还将保留查询中的其他参数。
The
RewriteRule
does only operate on the URL path and not the URL query. You need to use theRewriteCond
directive to test the URL query (%{QUERY_STRING}
). So try this rule:This rule will also preserve other parameters in the query.
我怀疑您需要使用 QUERY_STRING
希望这有帮助
I suspect that you will need to use QUERY_STRING
Hope this helps