ПРОЕКТЫ 


  АРХИВ 


Apache-Talk @lexa.ru 

Inet-Admins @info.east.ru 

Filmscanners @halftone.co.uk 

Security-alerts @yandex-team.ru 

nginx-ru @sysoev.ru 


  СТАТЬИ 


  ПЕРСОНАЛЬНОЕ 


  ПРОГРАММЫ 



ПИШИТЕ
ПИСЬМА












     АРХИВ :: nginx-ru
Nginx-ru mailing list archive (nginx-ru@sysoev.ru)

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: nginx + default {deferred|b ind} = корки



On Tue, May 29, 2007 at 07:57:56PM +0400, Александр Ворона wrote:

> Igor Sysoev пишет:
> 
> >>>nest tmp # ./nginx -t -c ./nginx.conf
> >>>2007/05/21 08:09:43 [info] 1416#0: the configuration file ./nginx.conf 
> >>>syntax is ok
> >>>2007/05/21 08:09:43 [info] 1416#0: the configuration file ./nginx.conf 
> >>>was tested successfully
> >>>nest tmp # ./nginx -c ./nginx.conf
> >>>Ошибка сегментирования (core dumped)
> >
> >Прилагаемый патч должее пофиксить segfault.
> да, пофиксил
> теперь в логе только
> 2007/05/29 11:50:43 [alert] 19581#0: changing the listen() backlog to -1 
> for 127.0.0.1:82 failed, ignored (98: Address already in use)
> 
> >FreeBSD позволяет bind() to 127.0.0.1:80 и *:80 в любом порядке.
> >Насчёт Линукса - нужно проверить.
> >
> netstat -tnepl|grep cfg.txt
> tcp        0      0 0.0.0.0:82                  0.0.0.0:* 
>     LISTEN      0          85904536   19582/cfg.txt
> 
> нет bind() на 127.0.0.1:82

У меня воспроизводится эта ошибка, причём даже для такого непересекающегося
варианта:

      listen  127.0.0.1:8000 default bind;
      listen  192.168.1.1:8000 default bind;

Второй listen всегда вылетает с ошибкой (98: Address already in use).
Проверялось на ядре 2.6.16.13.

Здесь есть две странности:
1) эта ошибка должна по идее выдаваться ещё на стадии bind(),
2) эта ошибка не должна выдаваться для непересекающихся адресов (по крайней
   мере, во FreeBSD с этим не возникает никаких проблем).

Есть подозрение на присутствие в ядре ipv6 (хотя nginx о нём не подозревает).

Можно попробовать собрать ядро без ipv6 ?


-- 
Игорь Сысоев
http://sysoev.ru



 




Copyright © Lexa Software, 1996-2009.