2015-06-22 4 views
40

В моем журнале ошибок я получаюnginx- дублирует ошибку сервера по умолчанию

[Экстренно] 10619 # 0: сервер дубликата по умолчанию для 0.0.0.0:80 в/и т.д./Nginx/сайтах с поддержкой/MySite. ком: 4

на 4 линии у меня есть:

server_name mysite.com www.mysite.com; 

Любые предложения?

+2

Post ваш полный конфиг. Каждый 'server {}' должен иметь свою собственную директиву 'listen'. – Marki555

ответ

74

Возможно, у вас есть другие файлы (например, конфигурация default), расположенные в /etc/nginx/sites-enabled, которые необходимо удалить.

Эта проблема вызвана повторением параметра default_server, предоставленного в одну или несколько директив listen в ваших файлах. Скорее всего, вы найдете это противоречивая директива читает что-то подобное:

listen 80 default_server; 

В качестве nginx core module documentation for listen состояний:

Параметра default_server, если он присутствует, будет вызывать сервер стать сервером по умолчанию для указанных address:port пара. Если ни одна из директив не имеет параметра default_server, первым сервером для этой пары будет первый сервер с парой address:port.

Это означает, что должно быть другим файл или server блока определен в конфигурации с default_server набором для порта 80. Nginx сталкивается, что прежде чем ваш файл mysite.com так попытайтесь удалить или корректировки, что другая конфигурация.

Если вы изо всех сил, чтобы найти, где эти директивы и параметры установлены, попробуйте найти так:

grep -R default_server /etc/nginx 
+0

Спасибо. Это действительно помогло. –

+13

Просто, чтобы быть понятным, это ключевое слово 'default_server', которое может отображаться только в одном конфиге - вы можете иметь несколько сайтов, определенных с помощью' listen 80; ' – Eborbob

+1

Спасибо, вы мне помогли. В моем случае я нашел дубликат в /etc/nginx/sites-enabled/default.save –

Смежные вопросы