0

怎么会这样

http://some-url.com/?lang=en

改写为:

http://en.some-url.com ???

通过 mod_rewrite?

4

1 回答 1

1

您可以在 some-url.com 的 VirtualHost-configfile 中将所有可能的语言特定子域定义为 ServerAlias 并添加以下 rewriterule

RewriteEngine On
RewriteCond %{HTTP_HOST} ^some-url\.com$ [NC]
RewriteCond %{QUERY_STRING} lang=(.*)$
RewriteRule . http://%1.some-domain.com/? [R=301,L] 

在您的服务器端脚本中,您可以通过检查名为 HTTP_HOST 的 SERVER/CGI 变量来获取实际语言(在 php 中这将是$_SERVER['HTTP_HOST']在 ColdFusion 中这将是#CGI.HTTP_HOST#

于 2012-04-29T08:00:20.543 回答