strange /dir -> /dir/ redirect in mapped case

Igor Sysoev is at rambler-co.ru
Thu Jul 6 10:24:33 MSD 2006


On Thu, 6 Jul 2006, Dmitry Morozovsky wrote:

> Вот такой фрагмент конфига
>
>    server {
>        listen          195.54.192.44:80;
>        server_name     _ ;
>        location / {
>                root    /$sroot;
>                index   index.html index.php;
>        }
>        location ~* \.(ico|jpg|jpeg|gif|zip|exe|t?gz|png|mp3|avi|mpg|mpeg|txt|s?html?|css|js)$ {
>                root    /$sroot;
>        }
>        location ~ /\.ht {
>                deny  all;
>        }
>        location ~ \.php$ {
>                proxy_pass   http://127.0.0.1;
>        }
>    }
>
> Приводит вот к чему:
>
> root at kucha:/usr/local/etc# telnet kucha 80
> Trying 195.54.192.44...
> Connected to kucha.rinet.ru.
> Escape character is '^]'.
> HEAD /ports HTTP/1.0
> Host: freebsd.rinet.ru
>
> HTTP/1.1 301 Moved Permanently
> Server: nginx/0.3.49
> Date: Thu, 06 Jul 2006 06:06:30 GMT
> Content-Type: text/html
> Content-Length: 185
> Location: http://_/ports/
> Connection: close
>
> Connection closed by foreign host.
>
>
> Это как???

В редиректах используется основное имя сервера, если Host не совпал
ни с одним описанным именем или маской. Для того, чтобы всегда
использовался Host, нужно описать несколько масок:

     server  _  *.ru  *.net  *.com;


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





More information about the nginx-ru mailing list