ПРОЕКТЫ 


  АРХИВ 


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: Проблема с порядком приме нения server_name



одна голова хорошо, а целый форум - лучше :)
чуяла душа, где-то рядом истина
Всем спасибо, пойду испытывать




14 сентября 2009 г. 16:49 пользователь Maxim Dounin
<mdounin@xxxxxxxxxx> написал:
> Hello!
>
> On Mon, Sep 14, 2009 at 04:16:15PM +0700, Vitaliy Lisenko wrote:
>
>>   Первым в конфе идет
>> Речь об Одном айпи (одинаковый для сотен доменов, плюс по регуляркам
>> еще поддомены
>>
>>  server {
>>
>>  listen 1.1.1.1:80 default sndbuf=8k;
>>  server_name 1.1.1.1;
>>
>>    location / 
>> {.............................................................................................................................
>> deny all;
>>      }
>>
>> типо для того, чтобы непрописанный хост не вел куда попал, а отдавал 403..
>> а "оно" (к примеру superpuper.com)  под регулярку "попало". под
>> которую в принципе не должно было попасть никогда.
>>  потом  include dir1/*.conf;
>> потом   include dir2/*.conf;
>> в папке дир2 лежит конф
>>  server 
>> {.......................................................................................................................
>>  listen 1.1.1.1:80;
>>  server_name www.site.ru ~ ([a-z.0-9-]+)\.site\.ru$;
>
> Вот так с пробелом после "~" и написано?
>
> Вообще говоря пустой regexp матчит всё, ничего удивительного тут
> нет.
>
> Maxim Dounin
>
>
>>
>>
>>
>>
>>
>> 14 сентября 2009 г. 16:09 пользователь Igor Sysoev <is@xxxxxxxxxxxxx> 
>> написал:
>> > On Mon, Sep 14, 2009 at 03:56:53PM +0700, Vitaliy Lisenko wrote:
>> >
>> >> нет, это прописано не в первом блоке серверНеймов, это инклуд 5 по счету
>> >
>> > Сервера висят на одних и тех же адресах ? Или есть специфичные
>> >
>> > listen x.x.x.x:80;
>> >
>> > ?
>> >
>> >> 14 сентября 2009 г. 15:45 пользователь Peter Leonov <gojpeg@xxxxxxxxx> 
>> >> написал:
>> >> >
>> >> > On 14.09.2009, at 12:08, Vitaliy Lisenko wrote:
>> >> >
>> >> >> я месяца два назад поймал глюк с именами сайтов.
>> >> >> Просил Дениса Латыпова отписать понятным общественности языком, но он
>> >> >> ,видимо , не отписал.
>> >> >> попытаюсь сам рзвить проблемку с именами доменов:
>> >> >>
>> >> >> проблема схожая, только с регуляркой .
>> >> >> server_name www.site.ru ~ ([a-z.0-9-]+)\.site\.ru$;
>> >> >> в реальности под него попадает почему-то  вообще любой домен, не
>> >> >> описаный своим  сервернеймом
>> >> >
>> >> > Если этот server_name описан в первом блоке server, то так и должно 
>> >> > быть.
>> >> > Первый блок server становится сервером по умолчанию, если не указано 
>> >> > иное.
>> >> >
>> >> >> nginx/0.8.7
>> >> >>
>> >> >>
>> >> >>
>> >> >> 6 сентября 2009 г. 22:32 пользователь Igor Sysoev <is@xxxxxxxxxxxxx>
>> >> >> написал:
>> >> >>>
>> >> >>> On Thu, Sep 03, 2009 at 12:30:58AM +0400, Vladimir Marunin wrote:
>> >> >>>
>> >> >>>> Hello Alexey,
>> >> >>>>
>> >> >>>> Первым делом поменял местами. Не помогло.
>> >> >>>> Помогла запись вида
>> >> >>>> server {
>> >> >>>>  server_name ta.com *.ta.com;
>> >> >>>>  ...
>> >> >>>> }
>> >> >>>>
>> >> >>>> Правда после этого я получил ошибку про маленький
>> >> >>>> server_names_hash_max_size, но это уже мелочи.
>> >> >>>>
>> >> >>>> Похоже, что .ta.com трактуется как полное имя, хотя и совпадает с
>> >> >>>> неполными. Точное указание имён спасает.
>> >> >>>
>> >> >>> Можешь прислать мне список серверов в виде
>> >> >>>
>> >> >>>   server {
>> >> >>>       server_name ...;
>> >> >>>   }
>> >> >>>
>> >> >>>   server {
>> >> >>>       server_name ...;
>> >> >>>   }
>> >> >>>
>> >> >>> ?
>> >> >>>
>> >> >>>> Thursday, September 3, 2009, 12:10:30 AM, you wrote:
>> >> >>>>
>> >> >>>>> а менять местами server{} пробовали?
>> >> >>>>> вдруг ...
>> >> >>>>
>> >> >>>>> On 02.09.2009, at 22:39, Vladimir Marunin wrote:
>> >> >>>>
>> >> >>>>>> Hello nginx-ru,
>> >> >>>>>>
>> >> >>>>>>  Имеется nginx 0.6.31 (на Debian etch) для него автоматически 
>> >> >>>>>> пишется
>> >> >>>>>> конфигурация на сотню server по такому шаблону (домен вымышленный,
>> >> >>>>>> конфигурацию показать не могу)
>> >> >>>>>>
>> >> >>>>>> server {
>> >> >>>>>>  server_name .crm.ta.com;
>> >> >>>>>>  listen 80;
>> >> >>>>>>  ...
>> >> >>>>>> }
>> >> >>>>>> ...
>> >> >>>>>> server {
>> >> >>>>>>  server_name .ta.com;
>> >> >>>>>
>> >> >>>>> а если попробовать вот так:
>> >> >>>>>  server_name *.ta.com;
>> >> >>>>>  ...
>> >> >>>>> }
>> >> >>>>> server {
>> >> >>>>>  server_name ta.com;
>> >> >>>>> ??
>> >> >>>>
>> >> >>>>>>  listen 80;
>> >> >>>>>>  ...
>> >> >>>>>> }
>> >> >>>>>>
>> >> >>>>>> Почему-то запрос http://crm.ta.com попадает во вторую секцию, хотя
>> >> >>>>>> надо в первую.
>> >> >>>>>> По debug логу видно, что его несёт именно в ta.com.
>> >> >>>>>>
>> >> >>>>>> Раньше всё работало нормально, но после какого-то изменения в 
>> >> >>>>>> конфиге
>> >> >>>>>> перестало, момент изменения не известен :(
>> >> >>>>>>
>> >> >>>>>> Вопрос: как можно понять логику выбора server у nginx? Какой лог 
>> >> >>>>>> может
>> >> >>>>>> подсказать как проходит выбор домена?
>> >> >>>>>>
>> >> >>>>>> --
>> >> >>>>>> Best regards,
>> >> >>>>>> Vladimir                          mailto:marunin@xxxxxxxxx
>> >> >>>>>>
>> >> >>>>>>
>> >> >>>>
>> >> >>>>
>> >> >>>>
>> >> >>>>
>> >> >>>> --
>> >> >>>> Best regards,
>> >> >>>>  Vladimir                            mailto:marunin@xxxxxxxxx
>> >> >>>>
>> >> >>>
>> >> >>> --
>> >> >>> Игорь Сысоев
>> >> >>> http://sysoev.ru
>> >> >>>
>> >> >>>
>> >> >
>> >> > С уважением,
>> >> > Петр Леонов.
>> >> > +7 (905) 758-12-73
>> >> >
>> >> >
>> >> >
>> >
>> > --
>> > Игорь Сысоев
>> > http://sysoev.ru
>> >
>> >
>
>


 




Copyright © Lexa Software, 1996-2009.