2012-07-11 2 views
68
server { 
    #listen 80; ## listen for ipv4; this line is default and implied 
    #listen [::]:80 default ipv6only=on; ## listen for ipv6 

    #root /usr/share/nginx/www; 

root /home/ubuntu/node-login; 
    # Make site accessible from 
    server_name ec2-xx-xx-xxx-xxx.us-west-1.compute.amazonaws.com; 

location /{ 
    proxy_pass http://127.0.0.1:8000/; 
    proxy_redirect off; 
} 

を無視し、「競合サーバー名」}nginxのエラー

サーバ名の競合[警告]「EC2を...」、任意の説明感謝。ありがとう。

+0

暗黙のデフォルト0.0.0.0:80があるようですが、明示的にそれを追加してくれました。 listen ec2-xx-xx-xxx-xxx.us-west-1.compute.amazonaws.com:80;続いてserver_nameディレクティブが機能します。 – user1447121

+0

'/ etc/nginx/sites-available/'にリンクされている '/ etc/nginx/sites-available/'を確認してください。ここに追加されたファイルには、重複または競合する構成が含まれている可能性があり – hanxue

答えて

115

Linuxを実行していると仮定し、gEditを使用してファイルを編集しています。 /etc/nginx/sites-enabledでは、一時ファイルが残っている可能性があります。 default~~をご覧ください)。

あなたのエディタによっては、ファイル名は.saveかそれに似ています。 $ ls -lahを実行して、意図しないファイルを見つけて削除してください(ありがとう、@Tischありがとう)。

このファイルを削除すると、問題が解決します。

+0

私の問題をUbuntu 12.04 x86_64 + nginx –

+1

で修正しましたか? /etc/nginx/sites-enabled "default" フォルダのみの "default〜"ファイルはありません。 –

+0

@DavidSaintlothそれは私とOPのために働いた。これは問題の原因の1つです。しかし、本当にファイルを持っていないことを確認するには、 '$ ls -alF/etc/nginx/sites-enabled'を通常は表示しません。 –

18

設定のどこかに別のserver_name ec2-xx-xx-xxx-xxx.us-west-1.compute.amazonaws.comがあります。

+0

私はそれをチェックして何も見つかりませんでした。私は "ec2_xxx ..."を削除すると、この警告は表示されません。 nginxの設定で0.0.0.0:80の暗黙のデフォルトがありますか? – user1447121

+0

[公式ドキュメント](http://nginx.org/r/listen): 'default:listen *:80 | *:8000; ' – VBart

+2

これは私のためのものでしたが、' localhost'でした。 – Rohmer

8

localhostが1つだけ定義されている必要があります。サイトが有効かどうか、またはnginx.confを確認してください。

+4

2つの別々の* .confファイルに2つの同一の "server_name"ディレクティブがありました。ありがとう。 –

+0

@FelipeAlvarezご参考までに – Marin

+0

これも私の問題を解決しました。 2つの同じサーバーブロックを異なる* .confファイルに配置しました。ありがとう! –

関連する問題