nginx反向代理和 ip重定向到域名配置

 配置说明:

1 访问test.cn将会跳转到test.cn/cms。并重新匹配server里面的规则

2 将前端用户访问test.cn/cms 页面转发到 http://172.16.20.1:8080/cms/ 并且前端显示为test.cn/cms

3 将前端用户访问test.cn/u 页面转发到 http://172.16.20.2:8080/u/ 并且前端显示为test.cn/u

4 将前端用户访问‘test.cn/任意6个字符或者数字’ 页面转发到a.b.c/前端输入的任意6个字符或者数字。并且前端显示为‘test.cn/任意6个字符或者数字’

5 将前端用户访问的163.177.111.111重定向到test.cn 并且前端显示为test.cn。如果用户输入163.177.111.111/test 页面会重定向到test.cn/test

6 将域名重定向到ip+端口的形式访问

server {
        listen       80;
        server_name  test.cn;
        rewrite ^/$  http://test.cn/cms;
        location ^~ /cms/ {
                proxy_redirect off;
                proxy_set_header   Host    $host; 
                proxy_set_header   X-Real-IP   $remote_addr; 
                proxy_set_header   X-Forwarded-For $proxy_add_x_forwarded_for; 
                proxy_pass http://172.16.20.1:8080/cms/;
                   }
        location ^~ /u/ {
                proxy_redirect off;
                proxy_set_header   Host    $host;
                proxy_set_header   X-Real-IP   $remote_addr;
                proxy_set_header   X-Forwarded-For $proxy_add_x_forwarded_for;
                proxy_pass http://172.16.20.2:8080/u/;
                   }
         location ^~ /([A-Za-z0-9]\{6\}) {
                proxy_redirect off;
                proxy_set_header   Host    $host;
                proxy_set_header   X-Real-IP   $remote_addr;
                proxy_set_header   X-Forwarded-For $proxy_add_x_forwarded_for;
                proxy_pass http://a.b.c/$1;
                   }
         location  / {
                proxy_redirect off;
                proxy_set_header   Host    $host;
                proxy_set_header   X-Real-IP   $remote_addr;
                proxy_set_header   X-Forwarded-For $proxy_add_x_forwarded_for;
                proxy_pass http://172.16.20.3;
                   }
        }
        
server {
        listen       80;
        server_name  163.177.111.111;
        rewrite ^(.*)  test.cn #将ip重定向到域名 
           }

server {
        listen 80;
        server_name www.yuming.com;
        rewrite ^(.*) http://103.111.111.3:8111$1;
           }


你可能感兴趣的:(nginx重定向,nginx反向代理)