Mod Rewrite:具有不同语言的不同域

时间:2014-08-24 13:46:05

标签: apache .htaccess mod-rewrite

我正在开发一个多语言网站。我正在为每种语言使用不同的子域,并且他们正在使用相同的文件夹。这是使用.po文件进行翻译的同一网站。

现在,我正在使用漂亮的网址,我需要每个子网域拥有自己的一套规则。

例如:

en.domain.com/contact
pt.domain.com/contato
es.domain.com/contacto

我的简化htaccess看起来像这样:

<IfModule mod_rewrite.c>
Options -Multiviews
RewriteEngine On
RewriteBase /

RewriteCond %{HTTP_HOST} ^en.domain.com$ [NC]
RewriteRule ^contact/$ /contact.php 
RewriteRule ^contact$ /contact.php [L]

RewriteCond %{HTTP_HOST} ^pt.domain.com$ [NC]
RewriteRule ^contato/$ /contact.php
RewriteRule ^contato$ /contact.php [L]

RewriteCond %{HTTP_HOST} ^es.domain.com$ [NC]
RewriteRule ^contacto/$ /contact.php
RewriteRule ^contacto$ /contact.php [L]


</ifModule>

问题是,如果我尝试从另一个域中的自定义网址,它仍然有效。例如,葡萄牙语中的“/ contato”单词仍会打开英语上的“/ contact”网址。

所以我想要的是,每个域只遵循它的特定规则集,而不是文件上的每个规则。有什么想法吗?

0 个答案:

没有答案