减少mod_rewrite规则

时间:2011-06-14 18:39:38

标签: regex mod-rewrite

我有两个重写规则:一个用于托管服务器,一个用于我的本地测试服务器(使用dev-sk -...作为其URL)。

如果通过.co.uk域名访问该站点,则添加

'en /':

RewriteCond %{SERVER_PORT} 80 [OR]
RewriteCond %{SERVER_PORT} 443
RewriteCond %{HTTP_HOST} ^domain.co.uk$ [NC]
RewriteRule ^$ http://domain.co.uk/en/ [R=301,L]

RewriteCond %{SERVER_PORT} 80 [OR]
RewriteCond %{SERVER_PORT} 443
RewriteCond %{HTTP_HOST} ^dev-sk-domain.co.uk$ [NC]
RewriteRule ^$ http://dev-sk-domain.co.uk/en/ [R=301,L]

这些可以合并为一条规则吗?

1 个答案:

答案 0 :(得分:0)

您应该能够将其写为

RewriteCond %{SERVER_PORT} 80 [OR]
RewriteCond %{SERVER_PORT} 443
RewriteCond %{HTTP_HOST} domain.co.uk$ [NC]
RewriteRule ^$ http://%{HTTP_HOST}/en/ [R=301,L]