多语言htaccess文件(LTD)

时间:2012-01-07 11:28:34

标签: .htaccess multilingual

我想拥有一个多语言网站。现在,我有2个域名。第一个是主域。那是website.nl。我有一个域别名,website.org。因此,2个域共享相同的public_html文件夹。

我想要的是: website.nl将使用文件/index.php/$1和 website.org将使用文件/gb/index.php/$1(因此当网址为website.org/test时,您将使用文件/gb/index.php/test(无网址重定向)

我在stackoverflow上的另一个主题上发现了以下内容:

Options +FollowSymlinks
RewriteEngine on

RewriteCond %{HTTP_HOST} website.org
RewriteRule ^(.*)$ /gb/index.php [L]

RewriteRule ^(.*)$ /index.php/$1 [L]

但是这个htaccess文件不起作用。我会得到500错误。就是这样。

有人能看出出了什么问题吗?

1 个答案:

答案 0 :(得分:2)

你的规则是循环的,否则2条规则会相互混淆并无限循环(例如,请求/foo将导致/index.php/index.php/index.php/index.php... etc因此返回500)。您需要添加一些条件来停止循环。尝试将条件和规则更改为:

RewriteCond %{HTTP_HOST} website.org
RewriteCond %{REQUEST_URI} !^/gb/index.php
RewriteRule ^(.*)$ /gb/index.php/$1 [L]

RewriteCond %{REQUEST_URI} !^/gb/index.php
RewriteCond %{REQUEST_URI} !^/index.php
RewriteRule ^(.*)$ /index.php/$1 [L]