添加链接
link之家
链接快照平台
  • 输入网页链接,自动生成快照
  • 标签化管理网页链接
备案 控制台
学习
实践
活动
专区
工具
TVP
写文章
专栏首页 johnhuster ubuntu20.04部署nginx正向代理服务
1 0

海报分享

ubuntu20.04部署nginx正向代理服务

由于默认的nginx发布版本不支持正向代理功能,需要借助ngx_http_proxy_connect_module这个三方插件来完成,具体步骤如下

1、下载nginx源码包,笔者使用的是1.19.10版本,具体下载地址为: http://nginx.org/download/

2、安装依赖组件,sudo apt install openssl libssl-dev libpcre3 libpcre3-dev zlib1g-dev

3、下载ngx_http_proxy_connect_module三方组件源码,下载地址为 https://github.com/chobits/ngx_http_proxy_connect_module

4、执行命令

patch -p1 < /path/to/ngx_http_proxy_connect_module/patch/proxy_connect.patch

5、执行configure命令

./configure --add-module=/path/to/ngx_http_proxy_connect_module

6、执行make & make install进行编译及安装

7、编译成功后会把nginx放在/usr/local/nginx目录下,其他目录参照nginx官网 http://nginx.org/en/docs/configure.html

8、找到nginx的配置文件,默认为/usr/local/nginx/conf目录,添加如下配置:

server {
                 # 监听端口,这样其他内网机器就可以通过nginx服务器的8888端口访问外网,所以nginx必须能够访问外网
                 listen                         8888;
                 # dns resolver used by forward proxying
                 #resolver    180.76.76.76;
                 resolver 127.0.0.53 ipv6=off;
                 resolver_timeout 30s;
                 # forward proxy for CONNECT request
                 proxy_connect;
                 proxy_connect_allow            443 563;
                 # 10秒对笔者来说有点短,会出现下载超时情况,所以延长至600s
                 proxy_connect_connect_timeout  600s;
                 proxy_connect_read_timeout     600s;
                 proxy_connect_send_timeout     600s;
                 send_timeout 600;
                 # forward proxy for non-CONNECT request
                 location / {
                         proxy_pass http://$host;
                         proxy_set_header Host $host;
        }

9、启动nginx即可

参照文章:

1、 http://nginx.org/en/docs/configure.html

2、 https://github.com/chobits/ngx_http_proxy_connect_module

3、 https://github.com/chobits/ngx_http_proxy_connect_module#configuration-example

本文参与 腾讯云自媒体分享计划 ,欢迎热爱写作的你一起参与!
本文分享自作者个人站点/博客: https://blog.csdn.net/john1337 复制
如有侵权,请联系 cloudcommunity@tencent.com 删除。