没有url重写的Htaccess重定向

时间:2013-02-07 10:48:01

标签: .htaccess url-rewriting

我手上有点问题。

我正在建立一个域名为3种语言,example.com为主要域名,en。(...)为英语,de。(...)为德国。 通常我只使用ln -S将httpdocs从subdomains重定向到main,因为所有语言都执行相同的代码,差别从php和mysql匹配。

我的新主机不提供任何ssh连接,因此我必须使用不同的方法。

有人告诉我,它可以通过.htaccess完成,但我已经尝试了很多东西,但只能重定向,更改网址,这是不可能的,它必须保持相同,内容是,将是来自另一个域名。有人可以帮忙吗?

1 个答案:

答案 0 :(得分:1)

此代码应该与您要搜索的代码类似:

www.domain.en .htaccess

RewriteBase /
RewriteRule ^(.*)$ http://www.domain.com/en/$1 [L,R=301]

www.domain.de .htaccess

RewriteBase /
RewriteRule ^(.*)$ http://www.domain.com/de/$1 [L,R=301]

您可以根据自己的需要调整http://www.domain.com/lang/$1部分。


修改

根据您的评论,这是子域名重定向的代码:

domain.com .htaccess

RewriteCond %{HTTP_HOST} ^en\.domain\.com [NC]
RewriteRule (.*) http://domain.com/en/$1 [QSA,L]

RewriteCond %{HTTP_HOST} ^de\.domain\.com [NC]
RewriteRule (.*) http://domain.com/de/$1 [QSA,L]