• 技术文章 >运维 >Nginx

    nginx如何配置代理转发

    (*-*)浩(*-*)浩2019-07-20 15:43:58原创49433

    Nginx是个厉害的服务器,可以配置多个服务器,一个server就是一个服务器

    server {
          listen       80;
          server_name  *.yourdomain.com;
    
       ....
    }

    代理转发是在server下面的location进行配置

    server {
       // 服务器配置
       location  / {
       // ...... 代理配置
       }
    }

    常见的Nginx代理配置

    upstream my_server {                                                         
        server 10.0.0.2:8080;                                                
        keepalive 2000;
    }
    server {
        listen       80;                                                         
        server_name  10.0.0.1;                                               
        client_max_body_size 1024M;
    
        location /my/ {
            proxy_pass http://my_server/;
            proxy_set_header Host $host:$server_port;
        }
    }

    通过该配置,访问nginx地址http://10.0.0.1:80/my的请求会被转发到my_server服务地址http://10.0.0.2:8080/

    需要注意的是,如果按照如下配置:

    upstream my_server {                                                         
        server 10.0.0.2:8080;                                                
        keepalive 2000;
    }
    server {
        listen       80;                                                         
        server_name  10.0.0.1;                                               
        client_max_body_size 1024M;
    
        location /my/ {
            proxy_pass http://my_server;
            proxy_set_header Host $host:$server_port;
        }
    }

    那么,访问nginx地址http://10.0.0.1:80/my的请求会被转发到my_server服务地址http://10.0.0.2:8080/my。这是因为proxy_pass参数中如果不包含url的路径,则会将location的pattern识别的路径作为绝对路径。

    更多Nginx相关技术文章,请访问Nginx使用教程栏目进行学习!

    以上就是nginx如何配置代理转发的详细内容,更多请关注php中文网其它相关文章!

    声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。
    专题推荐:nginx
    上一篇:nginx如何实现动静分离 下一篇:如何实现nginx高可用

    相关文章推荐

    • 怎么更改nginx配置文件路径• nginx怎么配置ssl• 怎么查看nginx日志• nginx怎么部署web项目

    全部评论我要评论

  • 取消发布评论发送
  • 1/1

    PHP中文网