1

我正在尝试添加最后一项改进(关于 htaccess),那就是我希望它重定向/?mod=inicio/inicio. 所以我试图用下面的代码来做,但它一直在构建这样的 url/inicio?mod=inicio

RewriteCond %{QUERY_STRING} ^mod=([a-z]+)$ [NC]
RewriteRule .* /%1 [L]

与额外参数相同的事情:从/?mod=x&type=y-z/x/y-z

4

1 回答 1

1

请尝试以下规则:

RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /\?mod=([a-z]+)&type=([a-z\-]+)
RewriteRule ^ /%1/%2? [L]

RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /\?mod=([a-z]+)($|\ )
RewriteRule ^ /%1? [L]

关键是匹配实际请求而不是 URI,因为您的其他规则(来自您之前的问题)将导致这些重写匹配,它们会相互冲突。另一个关键点是?在目标(例如)的末尾包含 a ,这样就不会附加/%1/%2?查询字符串。

于 2012-09-18T21:16:37.387 回答