Nginx反向代理入门实战指南

本站所有内容来自互联网收集,仅供学习和交流,请勿用于商业用途。如有侵权、不妥之处,请第一时间联系我们删除!Q群:迪思分享

免费资源网 – https://freexyz.cn/

目录概述

反向代理的作用实践Nginx反向代理内网穿透8081端口实现步骤实现方式二配置upstreamNginx配置https支持

总结

概述

Nginx反向代理(Reverse Proxy):反向代理是指服务器根据客户端的请求,从其关系的一组或多组后端服务器(如Web服务器)上获取资源,然后再将这些资源返回给客户端,客户端只会得知反向代理的IP地址,而不知道在代理服务器后面的服务器簇的存在。

Nginx反向代理入门实战指南插图

反向代理的作用

对客户端隐藏服务器(集群)的IP地址 安全:作为应用层防火墙,为网站提供对基于Web的攻击行为(例如DoS/DDoS的防护,更容易排查恶意软件等 为后端服务器(集群)统一提供加密和SSL加速(如SSL终端代理) 负载均衡,若服务器集群中有负荷较高者,反向代理通过URL重写,根据连线请求从负荷较低者获取与所需相同的资源或备援 对于静态内容及短时间内有大量访问请求的动态内容提供缓存服务 对一些内容进行压缩,以节约带宽或为网络带宽不佳的网络提供服务 减速上传 提供HTTP访问认证

实践Nginx反向代理内网穿透8081端口

目的:隐藏8081端口,通过访问80端口实现访问8081端口

实现步骤

我们配置api 在8081端口,并且成功部署,此时8081对外开放,所以可访问

Nginx反向代理入门实战指南插图1

以Ubuntu环境为例

$ cd /etc/nginx/ $ vim nginx.conf

Nginx http节点下 配置8081端口反向代理如下

server { listen 80 default_server; listen [::]:80 default_server; location /api/ { proxy_pass http://127.0.0.1:8081; } location /apidocs/ { proxy_pass http://localhost:8081/api/; index swagger-ui.html; error_page 404 http://localhost:8081/api/swagger-ui.html; } }

配置完成后重启Nginx服务

$ service nginx restart

访问http://ip/apidocs/swagger-ui.html 成功

Nginx反向代理入门实战指南插图2

我们可以关掉服务器安全组规则,去掉8081端口-安全组规则,可以登录阿里云配置,以阿里云为例,其他同理

http://ip/apidocs/swagger-ui.html 依然可以访问

http://ip:8081/api/swagger-ui.html 不可访问

Nginx反向代理入门实战指南插图3

至此,我们实现了nginx反向代理8081端口,通过访问80端口,代理到8081端口的目的

重点理解Ngnix location&proxy_pass字段规则

实现方式二配置upstream

在http节点下,加入upstream节点

upstream demo { server ip:8080; server ip:8081; }

将server节点下的location节点中的proxy_pass配置为:http:// + upstream名称

location / { proxy_pass http://demo; }

Nginx配置https支持

## # add cnn SSL Settings ## server{ listen 443; server_name demo.com; ssl on; ssl_certificate /etc/nginx/cert/test.pem; ssl_certificate_key /etc/nginx/cert/test.key; ssl_session_timeout 5m; location / { #根域名或者ip proxy_pass http://demo.com; } }

总结

免费资源网 – https://freexyz.cn/


© 版权声明
THE END
★喜欢这篇文章吗?喜欢的话,麻烦动动手指支持一下!★
点赞14 分享
评论 抢沙发

请登录后发表评论

    暂无评论内容