【发布时间】:2012-08-29 01:43:08
【问题描述】:
我在使用 apaches mod-rewrite 时遇到以下问题(这可能是一个简单的问题,但我就是不明白......)
我希望我的 URL 路径以两个字母部分(国家代码)开头,例如
http://www.example.com/se/
每当 URL 与此模式不匹配时,我希望我的 .htaccess 重定向到一个固定的起始地址,例如上面的 http://www.example.com/se/。
我还需要重定向不以斜杠结尾的 URL(即 http://www.example.com/se 也应该被重定向...)
我在.htaccess 中添加了以下几行:
RewriteEngine On
RewriteBase /
RewriteCond %{QUERY_STRING} !^/[a-z]{2}/
RewriteRule ^(.*)$ se/ [R,L]
但这会导致无限递归,因为请求http://www.example.com/se/ 也被重定向。我不明白,为什么在这种情况下RewriteCond 变为 true。
【问题讨论】:
标签: apache mod-rewrite redirect