2015-02-24 16 views

回答

1

RewriteRule第一个参数无法比拟的查询字符串。您已经编写了一个正则表达式,它与url stagedept=01stagdept=01相匹配。

您想改为使用RewriteCond。您可以使用%{QUERY_STRING}变量,但这可能会导致无限循环。相反,你可能想匹配%{THE_REQUEST}

RewriteCond %{THE_REQUEST} /stage\?dept=01 
RewriteRule^stages-ain.html [R,L,QSD] 

更改[R]标志[R=301]当你已经测试一切正常。除非您有充分的理由继续重写,否则始终使用外部重定向标记L,因为这可能会导致一些奇怪的问题。

请参阅the documentation了解更多信息。

+0

谢谢。我是一个零重写URL。您的解决方案给我这个网址: www.example.com.ici/stages-ain.html?dept = 01 我试图在重写规则中放入一个$ .html位,我有一个内部服务器错误。如何删除?dept = 01的url? 谢谢 – djoo 2015-02-24 11:03:52

+0

糟糕,我的错:可以添加'QSD'(查询字符串丢弃)标志或在'.html'后面添加'?'。答案已更新。 – Sumurai8 2015-02-24 11:05:48

+0

对不起,但有了QSD我也有一个内部服务器错误:/ – djoo 2015-02-24 11:08:58