IIS 6,使用IIRF。我不确定这是重写还是重定向。我们有一个新网站,需要301将旧网页重定向到新网页并仅保留查询字符串值。我需要以下重写规则。这些东西很难处理,我找不到任何符合我试图做的例子。
我需要根据特定网址重写:
subdomain.site.org/dir1/dir2/dir3/page.cfm?pc=1092
当点击此页面时,我需要重写以下内容:
subdomain2.site.org/detail.aspx?id=1092
请注意,它不会提取整个查询字符串,只是它的值。
答案 0 :(得分:0)
由于您要使用301重定向到新(永久)网址,因此您应使用RedirectRule
。
假设您有一个配置为回复subdomain.site.org
和subdomain2.site.org
的网站,您需要RewriteCond
才能重定向来自旧子域的请求。< / p>
RewriteCond %{SERVER_NAME} ^subdomain\.site\.org$
RedirectRule ^/dir1/dir2/dir3/page\.cfm\?pc=(\d+)$ http://subdomain2.site.org/details.aspx?id=$1 [I,R=301]
RedirectRule
最终仅在匹配旧网址模式时执行,并将查询字符串值pc
恢复为新网址。