listen unix socket - после перезагрузки Nginx - failed (98: Address already in use)
Может я что-то не так делаю, в конфиге указываю: server { listen unix:/var/run/www/test.sock; } Nginx создает файл сокета при старте, но после перезагрузки systemctl restart nginx, файл не удаляется и Nginx не может к нему забиндится, в логе выдает ошибку [emerg] bind() to unix:/var/run/www/test.sock failed (98: Address already in use) Что делать? Posted at Nginx Forum: https://forum.nginx.org/read.php?21,273687,273687#msg-273687 ___ nginx-ru mailing list nginx-ru@nginx.org http://mailman.nginx.org/mailman/listinfo/nginx-ru
Re: listen unix socket - после перезагрузки Nginx - failed (98: Address already in use)
Hello! On Mon, Apr 17, 2017 at 11:50:00AM -0400, S.A.N wrote: > Может я что-то не так делаю, в конфиге указываю: > > server > { > listen unix:/var/run/www/test.sock; > > } > > Nginx создает файл сокета при старте, но после перезагрузки systemctl > restart nginx, файл не удаляется и Nginx не может к нему забиндится, в логе > выдает ошибку > [emerg] bind() to unix:/var/run/www/test.sock failed (98: Address already in > use) > > Что делать? Вариантов как минимум два: - поменять сигнал остановки в описании сервиса systemd на TERM; - не делать restart, а использовать reload. Вообще тикет про это - https://trac.nginx.org/nginx/ticket/753. Но в целом идея, что для остановки nginx'а системными скриптами надо использовать QUIT - она, скажем так, странная. -- Maxim Dounin http://nginx.org/ ___ nginx-ru mailing list nginx-ru@nginx.org http://mailman.nginx.org/mailman/listinfo/nginx-ru
Re: listen unix socket - после перезагрузки Nginx - failed (98: Address already in use)
Maxim Dounin Wrote: > Но в целом идея, что для остановки nginx'а системными скриптами > надо использовать QUIT - она, скажем так, странная. Да, странно зачем в дистрибутиве от Nginx, в файле nginx.service указан QUIT сигнал ExecStop=/bin/kill -s QUIT $MAINPID Если удалить эту строчку, Systemd при остановке и перезагрузки сервиса, отправляет TERM сигнал. Спасибо! Posted at Nginx Forum: https://forum.nginx.org/read.php?21,273687,273691#msg-273691 ___ nginx-ru mailing list nginx-ru@nginx.org http://mailman.nginx.org/mailman/listinfo/nginx-ru
Re: listen unix socket - после перезагрузки Nginx - failed (98: Address already in use)
Возможно по этой же причине Nginx иногда не удалял файлы, по директиве client_body_in_file_only clean; client_body_temp_path - на локал файл системе Наверно, в момент получения QUIT сигнала, процес Nginx завершался и файлы не удалялись. Posted at Nginx Forum: https://forum.nginx.org/read.php?21,273687,273692#msg-273692 ___ nginx-ru mailing list nginx-ru@nginx.org http://mailman.nginx.org/mailman/listinfo/nginx-ru
Re: listen unix socket - после перезагрузки Nginx - failed (98: Address already in use)
Здравствуйте, On 17/04/2017 20:26, S.A.N wrote: > Maxim Dounin Wrote: >> Но в целом идея, что для остановки nginx'а системными скриптами >> надо использовать QUIT - она, скажем так, странная. > > Да, странно зачем в дистрибутиве от Nginx, в файле nginx.service указан QUIT > сигнал > > ExecStop=/bin/kill -s QUIT $MAINPID > > Если удалить эту строчку, Systemd при остановке и перезагрузки сервиса, > отправляет TERM сигнал. > Спасибо! Спасибо, поправил в http://hg.nginx.org/pkg-oss/rev/fa1476eab346 - будет в следующем релизе "из коробки". -- Konstantin Pavlov ___ nginx-ru mailing list nginx-ru@nginx.org http://mailman.nginx.org/mailman/listinfo/nginx-ru