Как правильно сделать редирект на определенный порт

Anton Yuzhaninov citrin at citrin.ru
Fri Dec 19 17:47:15 MSK 2008


Pavel Stoliarov wrote:
> Здравствуйте 
> На сервере установлен nginx в качестве frontend'a к апачу. 
> nginx слушает на портах 80 и 8080
> Необходимо что бы все запросы типа http://servername nginx редиректил на http://servername:8080
> 
> Я  добился нужного результата таким способом :
> 
> server {
>     listen  xxx.xxx.xxx.xxx:80;
>     listen  xxx.xxx.xxx.xxx:8080;
>     ...
>     ...
>       if ($server_port !~* "8080") {
>             rewrite ^/(.*)$ http://$host:8080/$1 redirect;
>      }
> 
> ....
> 
> Вроде бы все работает. Но я в nginx новичок, подскажите пожалуйста, правильно ли я сделал редирект ?
> 
> 

Лучше сделать два отдельных блока server

server {
      listen  xxx.xxx.xxx.xxx:8080;
      rewrite ^/(.*)$ http://$host:8080/$1 redirect;
}

server {
     listen  xxx.xxx.xxx.xxx:80;
     ...
}

-- 
  Anton Yuzhaninov





More information about the nginx-ru mailing list