作者信息
视频教程分类
推荐视频教程
  • php程序员小白到大牛三个月集训php程序员小白到大牛三个月集训
  • Laravel 9 学习正当时—保姆级教程,想学不会都难!Laravel 9 学习正当时—保姆级教程,想学不会都难!
  • 千万级数据并发解决方案(理论+实战)千万级数据并发解决方案(理论+实战)
  • Laravel基础与实战(模块化)Laravel基础与实战(模块化)
  • UNI-APP开发(仿饿了么)UNI-APP开发(仿饿了么)
  • 首页 >运维 >Nginx > 正文

    nginx如何配置反向代理

    转载2020-06-19 16:29:3915452 关注公众号:每天精选资源文章推送

    反向代理是工作中最常用的服务器功能,经常被用来解决跨域问题,下面我们来简单介绍一下如何实现反向代理。

    首先进入 Nginx 的主配置文件:

    vim /etc/nginx/nginx.conf

    (推荐教程:nginx使用教程

    然后我们去 http 模块的 server 块中的 location /,增加一行将默认网址重定向到最大学习网站 Bilibili 的 proxy_pass 配置:

    4f1f3ca89b3bd13e948d7a06b3d3ec7.png

    改完保存退出,nginx -s reload 重新加载,进入默认网址,那么现在就直接跳转到 B 站了,实现了一个简单的代理。

    实际使用中,可以将请求转发到本机另一个服务器上,也可以根据访问的路径跳转到不同端口的服务中。

    比如我们监听 9001 端口,然后把访问不同路径的请求进行反向代理:

    把访问 http://127.0.0.1:9001/edu 的请求转发到 http://127.0.0.1:8080

    把访问 http://127.0.0.1:9001/vod 的请求转发到 http://127.0.0.1:8081

    这种要怎么配置呢,首先同样打开主配置文件,然后在 http 模块下增加一个 server 块:

    server {
      listen 9001;
      server_name *.sherlocked93.club;
    
      location ~ /edu/ {
        proxy_pass http://127.0.0.1:8080;
      }
      
      location ~ /vod/ {
        proxy_pass http://127.0.0.1:8081;
      }
    }

    反向代理还有一些其他的指令,可以了解一下:

    1、proxy_set_header:在将客户端请求发送给后端服务器之前,更改来自客户端的请求头信息。

    2、proxy_connect_timeout:配置Nginx与后端代理服务器尝试建立连接的超时时间。

    3、proxy_read_timeout:配置Nginx向后端服务器组发出read请求后,等待相应的超时时间。

    4、proxy_send_timeout:配置Nginx向后端服务器组发出write请求后,等待相应的超时时间。

    5、proxy_redirect:用于修改后端服务器返回的响应头中的Location和Refresh。

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

    PHP小白到大牛线上直播班第二十期

    声明:本文转载于:掘金,如有侵犯,请联系admin@php.cn删除

  • 相关标签:nginx 反向代理
  • 相关文章

    相关视频


    专题推荐