2016-07-07 43 views
2

我的网站使用.htacess文件将根域名重定向到另一个URL。目前重定向看起来是这样的:停止.htaccess使用查询字符串重定向

RewriteEngine on RewriteRule ^$ http://example2.com/ [R=301,L]

我只想根域被重定向(example1.com到example2.com),因此上述工作正常。但是,如果在旧URL中使用查询字符串。例如

http://example1.com/?pages=3

重定向仍然有效,我不想要的。我只是有在使用查询字符串的重定向问题,别的是罚款:

http://example1.com/ - 是否重定向✓

http://example1.com/home - 不重定向✓

http://example1.com/?page=3 - 是否重定向X - 这需要不要重定向

任何人都可以帮忙吗?

回答

3

你可以把一个?在目的地结束丢弃旧的查询字符串:

RewriteEngine on 
RewriteRule ^$ http://example2.com/? [R=301,L] 

如果你不希望在请求包含查询字符串重定向,你可以使用:

RewriteEngine on 
RewriteCond %{QUERY_STRING} ^$ 
RewriteRule ^$ http://example2.com/ [R=301,L] 
+1

讨厌鬼,你贴'的RewriteCond%{QUERY_STRING }^$'第一。我想出了完全相同的条件。 – Ultimater

+1

谢谢你们的帮助!我使用第二个选项,并完美地工作! –

相关问题