两个网址是Joomla和.htaccess的多语种网站

时间:2013-10-14 17:14:31

标签: .htaccess mod-rewrite multilingual joomla3.1

我在Joomla建立了一个多语言网站! 3.1.x荷兰语和英语,使用Joomla原生的多语言功能! 3.1.x.我有两个域名,我想去这个网站,一个到荷兰方面,另一个到英国方面。

  1. http://www.internationalerozekerk.nl
  2. http://www.internationallgbtchurch.org
  3. 编号1应该是:index.php?lang = nl

    第2号应该是:index.php?lang = en

    在.htaccess中我添加了这个:

    RewriteEngine On
    RewriteCond %{HTTP_HOST} ^internationallgbtchurch.org [NC]
    RewriteRule (.*) ^internationalerozekerk.nl/index.php?lang=en$1 [L,R=301]
    

    这会将英文网址重定向到internationalerozekerk.nl/index.php?lang=en。但是,地址栏仍然显示:internationalerozekerk.nl/index.php?lang=en而不是internationallgbtchurch.org

    我没有找到任何可以使两个网址留在地址栏中的内容。

    有什么建议吗?

    Thanx,

    汤姆

2 个答案:

答案 0 :(得分:0)

您可以将这些规则用于内部重定向:

RewriteCond %{HTTP_HOST} ^(www\.)?internationallgbtchurch\.org$ [NC]
RewriteRule ^$ /index.php?lang=en [L,QSA]

RewriteCond %{HTTP_HOST} ^(www\.)?internationalerozekerk\.nl$ [NC]
RewriteRule ^$ /index.php?lang=nl [L,QSA]

参考:Apache mod_rewrite Introduction

答案 1 :(得分:0)

尝试删除主机名和R标记,然后删除$1

RewriteEngine On
RewriteCond %{HTTP_HOST} ^internationallgbtchurch.org [NC]
RewriteRule ^(.*)$ /index.php?lang=en [L,QSA]

对于其他网站:

RewriteCond %{HTTP_HOST} ^internationallgbtchurch.nl [NC]
RewriteRule ^(.*)$ /index.php?lang=nl [L,QSA]

在末尾添加$1会附加请求URI,这将完全搞乱查询字符串。如果您希望将路径作为另一个参数发送,那么您需要明确它(例如,“路径”):

RewriteCond %{HTTP_HOST} ^internationallgbtchurch.org [NC]
RewriteRule ^(.*)$ /index.php?lang=en&path=$1 [L,QSA]