nginx: [emerg] listen() to 0.0.0.0:80, backlog 511 failed (98: Address already in use)

nginx: [emerg] listen() to 0.0.0.0:80, backlog 511 failed (98: Address already in use)

· Linux, Nginx и Снипеты · 1 мин чтения

Это распространенная ошибка nginx, которая может повлиять на работу вашего сервера. В этой записи, я покажу простой способ решения этой проблемы.

Изначально вам нужно проверить нет ли у вас синтаксических ошибок в nginx или какие-либо других, это сделать следующей командой:

sudo nginx -t

После чего у вас должно выдать в консоли, что-то похожее на это:

nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: [emerg] listen() to 0.0.0.0:80, backlog 511 failed (98: Address already in use)
nginx: configuration file /etc/nginx/nginx.conf test failed

В моем случае, на первой строке указано, что в синтаксисе конфига, все окей, но есть конфликт IP адреса и порта 80. И третья строка говорит о том, что нельзя запустить nginx, потому что есть ошибки.

Чтобы исправить эту ошибку, вам нужно убить текущий процесс на 80 порту следующей командой:

sudo fuser -k 80/tcp

После чего перезапустить сервис.

sudo service nginx restart

В целом процесс выглядит следующим образом:

Вы пытались перезапустить nginx, но пишет «[fail]» и далее вы используете команды с этой записи для решения этой проблемы и в конце концов вы пытаетесь снова перезапустить процесс и все «[ OK ]».