ПРОЕКТЫ 


  АРХИВ 


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: Поддомен для всех доменов сразу



On Mon, Dec 17, 2007 at 10:36:12AM +0300, Andrey N. Oktyabrski wrote:

> Igor Sysoev wrote:
> >>>Проблема в том, что если в нижеприведённой конфигурации придёт запрос
> >>>на 192.168.1.2:80 без имени хоста, то nignx сделает редирект на
> >>>
> >>>http://mail.*/...
> >>>
> >>>       server {
> >>>            listen       192.168.1.1:80;
> >>>            server_name  example.com;
> >>>       }
> >>>       server {
> >>>            listen       192.168.1.1:80;
> >>>            listen       192.168.1.2:80;
> >>>            server_name  mail.*;
> >>>       }
> >>Я, может, плохо выспался - не пойму, почему будет редирект? Точнее, 
> >>зачем он тут такой неявный? По-моему, если он нужен мне, я его укажу 
> >>явно. А если не нужен - подходящий server{} уже найден, обработать его 
> >>как все остальные. Или я не о том?
> >
> >Имеется ввиду такой редирект:
> >GET /dir  >  http://site/dir/
> Так а почему он будет вообще? Ну, я подозреваю, без краткого экскурса в 
> nginx internals тут сложно будет что-то объяснить - если нет времани, 
> или желания - не надо. Достаточно мне будет понять, чем принципиально 

nginx, так же как и Апач, при запросе каталога без слеша возвращает редирект
на каталог со слешом. Делается это для того, чтобы не поплыли относительные
ссылки в /dir/index.html

> отличается обработка server_name с шаблоном и без него, и чем 
> принципиально отличается "mail.*" от "_" (оба имени несуществующие - в 
> этом смысле).

Редиректы в обоих случаях будут неудачными:

http://mail.*/dir/
http://_/dir/


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



 




Copyright © Lexa Software, 1996-2009.