0

どうしてこれができるのか

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

これに書き直しました:

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

mod_rewrite経由?

4

1 に答える 1

1

some-url.comのVirtualHost-configfileで、考えられるすべての言語固有のサブドメインをServerAliasとして定義し、次のリダイレクトを追加できます。

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 に答える