Apache 重写规则替换参数

Apache 重写规则替换参数,apache,mod-rewrite,Apache,Mod Rewrite,两者之间有什么区别吗 RewriteRule ^([a-zA-Z0-9\/\-_]+)$ http://www.example.com/index.php?url=$1 [QSA,L] 及 在第一种情况下,一个基本url是前缀,而在第二种情况下,它不是前缀。 如果有任何区别,那么是什么?这取决于当前站点是否在域www.example.com上 如果当前站点是www.example.com,则Apache会将第一条规则转换为与第二条规则完全相同的规则 如果当前站点不是www.example.co

两者之间有什么区别吗

RewriteRule ^([a-zA-Z0-9\/\-_]+)$ http://www.example.com/index.php?url=$1 [QSA,L]

在第一种情况下,一个基本url是前缀,而在第二种情况下,它不是前缀。
如果有任何区别,那么是什么?

这取决于当前站点是否在域www.example.com上

如果当前站点是www.example.com,则Apache会将第一条规则转换为与第二条规则完全相同的规则

如果当前站点不是www.example.com,则Apache将发出外部重定向(就像您在重写规则的末尾添加了
R
标志一样),而不是执行静默重写


有关更多详细信息,请参阅并查看有关规则替换部分的部分。

这取决于当前站点是否位于域www.example.com上

如果当前站点是www.example.com,则Apache会将第一条规则转换为与第二条规则完全相同的规则

如果当前站点不是www.example.com,则Apache将发出外部重定向(就像您在重写规则的末尾添加了
R
标志一样),而不是执行静默重写

有关更多详细信息,请参阅,并查看有关规则的替换部分的部分

RewriteRule ^([a-zA-Z0-9\/\-_]+)$ index.php?url=$1 [QSA,L]