У моєму журналі помилок я отримую
[emerg] 10619 # 0: дублікат сервера за замовчуванням для 0,0.0.0:80 в /etc/nginx/sites-enabled/mysite.com:2
У рядку 4 у мене є:
server_name mysite.com www.mysite.com;
Будь-які пропозиції?
У моєму журналі помилок я отримую
[emerg] 10619 # 0: дублікат сервера за замовчуванням для 0,0.0.0:80 в /etc/nginx/sites-enabled/mysite.com:2
У рядку 4 у мене є:
server_name mysite.com www.mysite.com;
Будь-які пропозиції?
Відповіді:
Можливо, у вас розміщені інші файли (наприклад, default
конфігурація)/etc/nginx/sites-enabled
які потрібно видалити.
Ця проблема викликана повторенням default_server
параметра, поданого до однієї або декількох listen
директив у ваших файлах. Ви, ймовірно, виявите, що ця конфліктна директива звучить приблизно так:
listen 80 default_server;
Як документація основного модуля nginx дляlisten
станів:
default_server
Параметр, якщо він присутній, призведе до сервера стати стандартним сервером для зазначеноїaddress:port
пари. Якщо жодна з директив не маєdefault_server
параметра, то перший сервер зaddress:port
парою буде сервером за замовчуванням для цієї пари.
Це означає, що повинен бути інший файл або server
блок, визначений у вашій конфігурації з default_server
набором для порту 80. nginx стикається з цим першим перед вашимmysite.com
файлом, тому спробуйте видалити або відрегулювати цю іншу конфігурацію.
Якщо ви намагаєтеся знайти місце, де ці директиви та параметри встановлені, спробуйте здійснити пошук так:
grep -R default_server /etc/nginx
default_server
ключове слово, яке може з’являтися лише в одній конфігурації - у вас може бути кілька сайтів, визначенихlisten 80;
default_server
параметр може з’являтися лише один раз для кожної address:port
пари. Це означає, що можна (і загальноприйнято) default_server
присутня кілька разів у загальній конфігурації nginx, але застосовуватись до різних IP / портів.
Виконайте це в терміналі, щоб побачити конфліктуючі конфлікти, що слухають той самий порт:
grep -R default_server /etc/nginx
ОС Debian 10 + nginx. У моєму випадку я від’єднав сторінку "за замовчуванням" як:
Якщо ви перебуваєте в цифровому океані, це означає, що вам потрібно перейти до / etc / nginx / включеним сайтам /, а потім ВИДАЛИТИ, використовуючи rm -R digitalocean та за замовчуванням
Це зафіксував це для мене!
rm -R previousServerFolderName
потім зробити, sudo service nginx restart
щоб зробити systemctl status nginx
шоу "активним (працює)"
server {}
повинен мати своюlisten
директиву.