listen unix socket - после перезагрузки Nginx - failed (98: Address already in use)

2017-04-17 Thread S.A.N
Может я что-то не так делаю, в конфиге указываю:

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)

2017-04-17 Thread Maxim Dounin
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)

2017-04-17 Thread S.A.N
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)

2017-04-17 Thread S.A.N
Возможно по этой же причине 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)

2017-04-18 Thread Konstantin Pavlov
Здравствуйте,

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