我一般都是使用 nginx 做反向代理 tomcat 和其他应用的,其实 nginx 也是支持正向代理的
所谓正向代理就是内网用户通过网关访问外部资源,就是电脑上网时浏览器设置下 http 代理地址访问互联网
而反向代理就是外部用户通过网关访问内网资源,通俗讲就是,你的网站跑在内网的 8080 端口,别人能够通过 80 端口来访问它
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; } }
总结
代理感觉不是很稳定,有时候会打不开,尤其是 https 网站。访问国外网站千万不要这样搞,这里只是为了熟悉下 nginx 的正向代理功能
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
Nginx代理上网
《魔兽世界》大逃杀!60人新游玩模式《强袭风暴》3月21日上线
暴雪近日发布了《魔兽世界》10.2.6 更新内容,新游玩模式《强袭风暴》即将于3月21 日在亚服上线,届时玩家将前往阿拉希高地展开一场 60 人大逃杀对战。
艾泽拉斯的冒险者已经征服了艾泽拉斯的大地及遥远的彼岸。他们在对抗世界上最致命的敌人时展现出过人的手腕,并且成功阻止终结宇宙等级的威胁。当他们在为即将于《魔兽世界》资料片《地心之战》中来袭的萨拉塔斯势力做战斗准备时,他们还需要在熟悉的阿拉希高地面对一个全新的敌人──那就是彼此。在《巨龙崛起》10.2.6 更新的《强袭风暴》中,玩家将会进入一个全新的海盗主题大逃杀式限时活动,其中包含极高的风险和史诗级的奖励。
《强袭风暴》不是普通的战场,作为一个独立于主游戏之外的活动,玩家可以用大逃杀的风格来体验《魔兽世界》,不分职业、不分装备(除了你在赛局中捡到的),光是技巧和战略的强弱之分就能决定出谁才是能坚持到最后的赢家。本次活动将会开放单人和双人模式,玩家在加入海盗主题的预赛大厅区域前,可以从强袭风暴角色画面新增好友。游玩游戏将可以累计名望轨迹,《巨龙崛起》和《魔兽世界:巫妖王之怒 经典版》的玩家都可以获得奖励。