nginx-デフォルトサーバーの重複エラー


105

私のエラーログには

[emerg] 10619#0:/etc/nginx/sites-enabled/mysite.com:4にある0.0.0.0:80のデフォルトサーバーの複製

4行目で私は:

server_name mysite.com   www.mysite.com;

助言がありますか?


4
完全な設定を投稿します。それぞれにserver {}独自のlistenディレクティブが必要です。
Marki555 2015年

サイト対応で何かを編集していて、接続が予期せず閉じられた場合、テキストエディターからの自動保存ファイルで終了する可能性があるため、ほとんどすべての構成が複製されて終了し、そのファイルを削除するだけです(nano file.saveの場合)。
LuisF

回答:


196

おそらく他のファイル(default構成など)があり、それらを/etc/nginx/sites-enabled削除する必要があります。

この問題は、ファイル内のdefault_server1つ以上のlistenディレクティブに指定されたパラメーターの繰り返しが原因で発生します。この競合するディレクティブが次のようなものを読み取ることに気付くでしょう:

listen 80 default_server;

ためのnginxのコアモジュールのドキュメントlistenの状態:

このdefault_serverパラメーターが存在する場合、サーバーは指定されたaddress:portペアのデフォルトサーバーになります。どのディレクティブにもdefault_serverパラメーターがない場合、address:portペアを持つ最初のサーバーがこのペアのデフォルトサーバーになります。

これは、ポート80の設定でserver構成に定義された別のファイルまたはブロックが存在する必要があることを意味しますdefault_server。nginxは、mysite.comファイルの前に最初にそれを検出するため、他の構成を削除または調整してみてください。

これらのディレクティブとパラメーターが設定されている場所を見つけるのに苦労している場合は、次のように検索してみてください。

grep -R default_server /etc/nginx

ありがとう。それは本当に役に立ちました。
Koushik Das

29
明確にdefault_serverするために、1つの構成でのみ表示できるキーワードです。複数のサイトを定義できますlisten 80;
Eborbob

1
ありがとう、あなたは私を助けてくれました。私の場合、/ etc / nginx / sites
Andrew Grow

1
@Eborbobのコメントに加えて、default_serverパラメーターはaddress:portペアごとに1 つしか表示できません。これはdefault_server、全体的なnginx構成で複数回存在する可能性がある(そして一般的)が、異なるIP /ポートに適用されることを意味します。
davidjb 2017

2
grepコマンドは単なるチケットでした。それは簡単なことです、ありがとう
FireDragon 2017年


5

OS Debian 10 + nginx。私の場合、「デフォルト」ページのリンクを解除しました:

  1. cd / etc / nginx / sites-enabled
  2. デフォルトのリンクを解除
  3. サービスnginx再起動

4

Digital Oceanを使用している場合は、/ etc / nginx / sites-enabled /に移動し、rm -R digitaloceanとdefaultを使用して削除する必要があることを意味します

それは私のためにそれを修正しました!

Bitviseを使用したWindows 10のコンソールの写真


これは私にとってうまくいった簡単な答えでした。私はに行かなければならなかったの/ etc / nginxの/サイト対応/及びrm -R previousServerFolderName、その後やるsudo service nginx restart作るためにsystemctl status nginx、「アクティブ(ランニング)」ショーは
ロリーポリ
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.