静态URL上的RewriteRule

时间:2013-02-19 09:13:40

标签: .htaccess mod-rewrite redirect

我正在网上新版本的网站,我必须将一些旧的索引页面重定向到新的。 所以我已经基于静态URL生成了一个htaccess(旧的重定向到新的url)。

它适用于其中一些,但它发现它在拥有get参数的那些上产生404错误(我认为这是原因)。

有两条规则,即工作规则和失败规则:

<IfModule mod_rewrite.c>
RewriteEngine on
#Working one
RewriteRule old_page_indexed.htm http://newsite.com [R=301,L] 
#Not working
RewriteRule PBBios.asp?PBMInit=1 http://newsite.com [R=301,L] 
</IfModule>

我试图关注但不工作:

RewriteRule PBBios.asp\?PBMInit=1 http://newsite.com
RewriteRule ^PBBios.asp\?PBMInit=1$ http://newsite.com

您是否知道如何在htaccess中执行此操作?

非常感谢=)

1 个答案:

答案 0 :(得分:1)

独立测试路径和查询字符串

RewriteCond %{REQUEST_URI} ^PBBios.asp$
RewriteCond %{QUERY_STRING} ^PBMInit=1$
RewriteRule ^(.*)$ http://newsite.com [R=301,L]