Re: Странное поведение при регулярных выражениях в server_name

Maxim Dounin mdounin на mdounin.ru
Ср Июн 16 03:16:37 MSD 2010


Hello!

On Wed, Jun 16, 2010 at 12:56:17AM +0200, Anton Bessonov wrote:

[...]

> nginx_l2.conf:
> server {
>    listen 127.0.0.1:1361;
> 
>    #server_name     ~^(www\.)?(?P<subdomain>.+)\.beta\.site\.de$;
>    server_name     ~^(.*)\.beta\.site\.de$ ~^www\.(.*)\.beta\.site\.de$;
>    set   $subdomain $1;

[...]

> 2010/06/15 22:53:40 [error] 25624#0: *293364 open()
> "/home/site.de/subs//test.css" failed (2: No such file or
> directory), client: 127.0.0.1, server: ~^(.*)\.beta\.site\.de$,
> request: "GET /test.css HTTP/1.0", host: "127.0.0.1:1361"
> 
> то есть $subdomain пропущен...

Ну а откуда он там?  Внимательно смотрим на host - там нет 
никакого доменного имени.  Запрос попал в рассматриваемый блок 
server{} исключительно из-за того что он является сервером по 
умолчанию для данной пары ip:port.

Maxim Dounin



Подробная информация о списке рассылки nginx-ru