2011-11-13 11 views
0

私は4台の内部サーバインスタンスに対してロードバランサとしてnginxを使用しています。以下のnginx.confは、www.mydomain.comに対してのみ正しく動作します。しかし、mydomain.comやhttp://mydomain.comではそうではありません。このnginx.confの何が問題なのですか?

upstream mydomain{ 
    server 127.0.0.1:8000; 
    server 127.0.0.1:8001; 
    server 127.0.0.1:8002; 
    server 127.0.0.1:8003; 
} 

server { 
    listen 80; 
    server_name www.mydomain.com; 
    location/{ 
    proxy_pass http://mydomain; 
    } 
} 

答えて

0

それはそれが理由server_name www.mydomain.commydomain.comのために動作しないことが普通です。

私はnginxの専門家ではありませんが、server_nameを省略してみてください。

+0

同じ結果 - www.mydomain.comでのみ動作します。 – mkrecny

+0

あなたの完全なngninx設定を投稿して、「作品のみ」という意味を教えてください。他のドメインではどうなりますか?また、www.mydomain.comをmydomain.comに変更すると、mydomain.comは動作しますか? – alexpirine

0

私はあなたがこれを試すことができると思います。

server { 
    listen 80; 
    server_name www.mydomain.com mydoamin.com; 
    location/{ 
    proxy_pass http://mydomain; 
    } 
} 

は、少なくとも私はあなたが設定したドメインのために動作します docs

+0

同じ結果 - www.mydomain.comでのみ動作します。 – mkrecny

0

すべてのWebサーバでは、この解決策を見つけました。この場合、追加した唯一のドメインはwww.mydomain.comなので、www.mydomain.comというアドレスの「作業」を行うことになります。

あなたはすべてのサブドメインが仕事をしたい場合は、次のようにmydomain.comの前にワイルドカード文字を必要とする:

server { 
    listen 80; 
    server_name .mydomain.com; 
    location/{ 
    proxy_pass http://mydomain; 
    } 
} 

注意してください。 mydomain.comの前に。

関連する問題