ПРОЕКТЫ 


  АРХИВ 


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 Sun, Dec 16, 2007 at 02:52:42PM +0300, Влад wrote:

> Вы писали 16 декабря 2007 г., 9:29:15:
> 
> А почему тогда не убрать проверку на дубликат этой "заглушки", чтобы
> не надо было извращений типа "0_", "1_", "2_", "3_"?
> 
> Или это технически сложно сделать?

Нет, технически это очень просто.

На самом деле, нужно пересмотреть синтаксис server_name в отношнии первого
имени.

Сейчас первое имя в server_name трактуется как основное и используется
для редиректов, если
1) в запросе не указано имя вообще,
2) или имя есть, но оно не совпало ни с одним из описанных, и управление
   попало в дефолтный сервер.

Поэтому первое имя не может быть регулярным выражением и содержать '*'.
Для случаев типа mail.*, когда основное имя не интересует, приходится
делать заглушку.

Второй момент, котороый мне не нравится - это просто '*' в server_name. См.

server_name   www.example.com  *;

в конце

http://sysoev.ru/nginx/docs/http/ngx_http_core_module.html#server_name

Хотелось бы придумать синтаксис, который бы описывал обе задачи.

> > "_" - это просто несуществующее имя, заглушка.
> > Вместо её можно поставить что-то вроде "0_", "1_".
> 
> >> Но если запись "server_name  _" присутствует в нескольких конфигах
> >> nginx -t выдает: "conflicting server name "_" on 0.0.0.0:80, ignored"
> >> 
> >> Поэтому, одновременно прописать 2 алиаса (mail.* и www.mail.*) таким
> >> способом у меня не получилось :(
> 
> -- 
> С уважением,
>  Влад                          mailto:vk@xxxxxxxxxx
> 
> 

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



 




Copyright © Lexa Software, 1996-2009.