我正在开发一个多语言网站。我正在为每种语言使用不同的子域,并且他们正在使用相同的文件夹。这是使用.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”网址。
所以我想要的是,每个域只遵循它的特定规则集,而不是文件上的每个规则。有什么想法吗?