Re: Регулярка для валидации имен в server_name
Валентин Бартенев
vbart at nginx.com
Tue Feb 26 16:47:24 UTC 2013
On Tuesday 26 February 2013 19:34:49 Никита Козлов wrote:
> 26 февраля 2013 г., 10:18 пользователь Andrey Kopeyko
>
> <andrey at kopeyko.ru> написал:
> > 26.02.2013 00:34, Andrey Repin пишет:
> > Может, пора уже открыть топикстартеру глаза на большую тайну нашего
> > сообщества - что не бывает, с точки зрения nginx, ни валидных ни
> > не-валидных значений server_name? Что nginx просто не занимается
> > проверкой написанного там.
>
> Вот блин)
> Изначально была задача не допустить генерации конфигов на которые
> nginx бы ругался, а вот мозгов что-то мне не хватило взять и проверить
> ругается ли nginx вообще на содержимое server_name)
>
> Спасибо за просветление!
Это неправда на самом деле. Достаточно посмотреть на
код парсинга этой директивы, и там есть ряд проверок
на распространенные ошибки:
http://trac.nginx.org/nginx/browser/nginx/trunk/src/http/ngx_http_core_module.c#L4184
Кроме того, часть проверок будет выполнена уже после
парсинга всего конфига:
http://trac.nginx.org/nginx/browser/nginx/trunk/src/http/ngx_http.c#L1491
Единственный надежный способ - запускать nginx с флагом
"-t", чтобы он сам проверил валидность конфигурации.
--
Валентин Бартенев
http://nginx.com/support.html
http://nginx.org/en/donation.html
Подробная информация о списке рассылки nginx-ru