您几乎总是希望将
[R]
与[L]
结合使用 (也就是说,使用[R,L]
)因为[R]
标志位于其前面http://thishost[:thisport]
到URI,但随后将其传递给 规则集中的下一个规则,通常会导致' 无效的URI 在请求中'警告。
现在,让我们说我的重写声明如下:
RewriteRule ^pass/?$ https://www.example.com/ [R,NC]
因为在这里我将我的客户端重定向到另一个主机/域,我真的需要传递[L]
标志吗?
如果我也使用[QSA]
标志会有效果吗?
答案 0 :(得分:2)
确实是个好问题。
在我的所有测试中,我无法创建一个方案,从此规则中省略L
显示整体行为的任何变化。仅在内部进行更改,因为将L
标志强制mod_rewrite
立即运行rewrite
循环而不是直到文件末尾。因此,如果出于其他原因,L
的IMO出于性能原因更好。
关于QSA
:此处绝对不需要,因为只有在您的规则修改QSA
时才需要QUERY_STRING
,而这不是这种情况。< / p>