2009-06-29 70 views
3

我有一个htaccess重定向,需要将查询字符串转发到新的URL,但重定向后它会被丢弃。有人能告诉我什么是错的吗?htaccess重定向附加查询字符串?

RewriteRule ^services/agents.*$   https://services.example.com/agents/ [R=301,L,QSA] 

回答

2

相同的规则在我的服务器上正常工作。问题应该是别的。 我说我的服务器上相同的规则,我得到以下重定向

http://mysite.com/services/agents/foo?foo=bar => https://services.mysite.com/agents/?foo=bar 

请注意,您不需要添加QSA标志,因为该目标不包括任何查询字符串。 This article可能包含一些有用的信息来帮助您处理Htaccess和查询字符串。

+0

我想通了。我重定向到的服务器为/ agents/=>/services/agents设置了自己的重定向。叹.. – Aaron 2009-06-29 21:13:15

2

一般情况下,如果不指定查询进行替换,则不需要显式追加查询或使用QSA标志。但正如你所说你的规则不起作用,试试这个:

RewriteRule ^services/agents.*$ https://services.example.com/agents/?%{QUERY_STRING} [R=301,L] 
相关问题