server_name bug

Eugene Janusov eugene at annah.ru
Thu Oct 30 19:23:53 MSK 2008


> server {
>    listen *:80;
>    server_name site.com;
>    server_name *.site.com;
> }
>
> server {
>    listen 10.20.30.40:80;
>    server_name site.com;
>    server_name mail.*;
> }
>
> если listen *:80; будет включать в себя listen 10.20.30.40:80;

> в каком из серверов должен обрабатываться запрос Host: mail.site.com ?
В первом, поскольку подходящий server_name имеется в обоих случаях, 
listen также подходит в обоих случаях, но по документации сначала 
обрабатываются «имена с маской в начале имени», а затем «имена с маской 
в конце имени».

> а в каком из них запрос Host: site.com ? а если запрос придет на адрес
> 10.20.30.40
Во втором, поскольку совпадение server_name одинаково точное, а по 
listen более полное.

> или на адрес 10.20.30.50 (этот ip попадает в первый listen)
В первом, поскольку у второго этот IP не указан вообще.

-- 
Best regards,
Eugene Janusov.





More information about the nginx-ru mailing list