分享、学习、提高
2008/10/26 18:33
文章作者:Enjoy 转载请注明原文链接。
这个问题,在网站迁移时,如果考虑前后URL,可能会碰到。

假设Rewrite是这样的:

RewriteRule ^test.html$ http://www.9enjoy.com [R=301,L]

那么访问test.html没有问题,

本机访问,http://hx/test.html
正确的Rewrite到http://www.9enjoy.com

但访问:
http://hx/test.html?id=x
却Rewrite到了http://www.9enjoy.com?id=x
可是,我不希望有这个id=xunhappy

尝试多种方式未果。

如果带参数的URL,Redirect到一个页面,倒是可以。
RewriteRule ^test.html$ http://www.9enjoy.com/tag.php [R=301,L]
这个规则没有问题
访问test.html?id=x,照样到http://www.9enjoy.com/tag.php,正确!
但目标是目录时,就会带上参数:(


@@081027@@UPDATE

想不出其它方法,就用有参数的Rewrite到301.php,这页的内容是php写的301Redirect到目标网站。
RewriteEngine On
RewriteCond %{QUERY_STRING} ^$
RewriteRule ^(.*)$ http://www.9enjoy.com/ [R=301,L]    
RewriteCond %{QUERY_STRING} ^(.+)$
RewriteRule ^(.*)$ /301.php [L]
发表评论
表情
emotemotemotemotemot
打开HTML
打开UBB
打开表情
隐藏
昵称   密码   游客无需密码
网址   电邮   [注册]