今天小编给大家分享一下如何使用Nginx代理上网的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。
http 代理配置
# 正向代理上网 server { listen 38080; # 解析域名 resolver 8.8.8.8; location / { proxy_pass $scheme://$http_host$request_uri; } }
浏览器配置下代理 ip 和端口,然后访问 http://www.ip138.com ,可以发现 ip 已经变化了,说明生效了
然而访问 https 网站却打不开,这是由于原生 nginx 只支持 http 正向代理,为了 nginx 支持 https 正向代理,可以打 ngx_http_proxy_connect_module 补丁+ ssl 模块支持
添加 https 代理模块
这里需要重新编译 nginx,需要查看当前 nginx 的版本和编译选项,然后去官网下载同版本的 nginx 源码进行重新编译
/usr/local/nginx/sbin/nginx -v
wget http://nginx.org/download/nginx-1.15.12.tar.gz tar -zxvf nginx-1.15.12.tar.gz
下载模块 ngx_http_proxy_connect_module
git clone https://github.com/chobits/ngx_http_proxy_connect_module
打补丁,对 nginx 源码修改,这一步很重要,不然后面的 make 过不去
patch -d /root/nginx-1.15.12/ -p 1 < /root/ngx_http_proxy_connect_module/patch/proxy_connect_rewrite
在原有配置后追加模块,make 后注意不要 install
cd /root/nginx-1.15.12/ ./configure --with-http_stub_status_module --with-http_ssl_module --with-file-aio --with-http_realip_module --add-module=/root/ngx_http_proxy_connect_module/ make mv /usr/local/nginx/sbin/nginx /usr/local/nginx/sbin/nginx.bak cp /root/nginx-1.15.12/objs/nginx /usr/local/nginx/sbin/
更改配置文件如下,然后启动服务
# 正向代理上网 server { listen 38080; # 解析域名 resolver 8.8.8.8; # ngx_http_proxy_connect_module proxy_connect; proxy_connect_allow 443 563; proxy_connect_connect_timeout 10s; proxy_connect_read_timeout 10s; proxy_connect_send_timeout 10s; location / { proxy_pass $scheme://$http_host$request_uri; } }
以上就是“如何使用Nginx代理上网”这篇文章的所有内容,感谢各位的阅读!相信大家阅读完这篇文章都有很大的收获,小编每天都会为大家更新不同的知识,如果还想学习更多的知识,请关注亿速云行业资讯频道。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。