2012-04-02 10 views
2

複数の言語でウェブサイトを作りたいと思っています。ユーザーの好みの言語を検出するためにクッキーを使用しています。各言語のサブドメインを作成する方法は?

今私は、各言語はそのサブドメインが検索エンジン、Facebookのようないくつかのことでインデックスを作成する必要があるようにしたいです。

はので、私は私のApacheは、サブドメインが要求されたかを把握するために$ _SERVER [「SERVER_NAME」]を使用して、同じフォルダにすべての私の仮想ホストを指すように設定します。

私は私のhtaccessファイルにこのコードを使用して起動します。

<VirtualHost *> 
    ServerName mydomain.com 
    ServerAlias en.mydomain.com ar.mydomain.com es.mydomain.com 
</VirtualHost> 

が、それは動作しませんし、私はそうes.mydomain.come任意の助けを要求する場合、サーバーを見つけることができません取得しますか?

私は上記のコードの後に​​mod_rewriteを使用します。私はcPanelでサブドメインを作成しませんでした!あなたが同じフォルダにすべてのサブドメインを指示することができます

$_SERVER["SERVER_NAME"]//will always show domain.com 
$_SERVER["HTTP_HOST"]//Will show en.domain.com if that is where they entered from. 

答えて

4

:覚えて

<VirtualHost *:80> 
    DocumentRoot /www/public //whatever the root is! 
    ServerName domain.com 
    ServerAlias en.domain.com, es.domain.com 
</VirtualHost> 

別のノート:限り、ブルースロックが

はこれを試して言ったようにCNAMEレコードが細かいよう

+0

は依然として動作しません。( – D3VELOPER

+0

"サーバーを見つけることができません"というエラーメッセージがDNSの問題である可能性が最も高いです。 Windowsの場合は、コマンドラインで「nslookup」と入力し、問題のドメイン名を入力します。有効なIPアドレスを持つ非正式な回答を得た場合は動作しますが、「存在しないドメイン」を取得した場合はDNSの問題です。 DNSの変更には24時間以上かかります。 – cgTag

1

ワイルドカード*を使用して

<VirtualHost *> 
     ServerName mydomain.come 
     ServerAlias *.mydomain.com 
</VirtualHost> 
関連する問題