nginx 正向和反向代理(Nginx反向代理入门实战指南)
类别:服务器 浏览量:1953
时间:2021-10-05 00:24:14 nginx 正向和反向代理
Nginx反向代理入门实战指南目录
- 概述
- 反向代理的作用
- 实践Nginx反向代理内网穿透8081端口
- 实现步骤
- 实现方式二配置upstream
- Nginx配置https支持
- 总结
Nginx反向代理(Reverse Proxy):反向代理是指服务器根据客户端的请求,从其关系的一组或多组后端服务器(如Web服务器)上获取资源,然后再将这些资源返回给客户端,客户端只会得知反向代理的IP地址,而不知道在代理服务器后面的服务器簇的存在。
反向代理的作用- 对客户端隐藏服务器(集群)的IP地址
- 安全:作为应用层防火墙,为网站提供对基于Web的攻击行为(例如DoS/DDoS的防护,更容易排查恶意软件等
- 为后端服务器(集群)统一提供加密和SSL加速(如SSL终端代理)
- 负载均衡,若服务器集群中有负荷较高者,反向代理通过URL重写,根据连线请求从负荷较低者获取与所需相同的资源或备援
- 对于静态内容及短时间内有大量访问请求的动态内容提供缓存服务
- 对一些内容进行压缩,以节约带宽或为网络带宽不佳的网络提供服务
- 减速上传
- 提供HTTP访问认证
目的:隐藏8081端口,通过访问80端口实现访问8081端口
实现步骤我们配置api 在8081端口,并且成功部署,此时8081对外开放,所以可访问
以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 成功
我们可以关掉服务器安全组规则,去掉8081端口-安全组规则,可以登录阿里云配置,以阿里云为例,其他同理
http://ip/apidocs/swagger-ui.html 依然可以访问
http://ip:8081/api/swagger-ui.html 不可访问
至此,我们实现了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; }
## # 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; } }
到此这篇关于Nginx反向代理入门实战的文章就介绍到这了,更多相关Nginx反向代理内容请搜索开心学习网以前的文章或继续浏览下面的相关文章希望大家以后多多支持开心学习网!
您可能感兴趣
- linux系统查看nginx系统版本(Linux中Nginx的防盗链和优化的实现代码)
- nginx查看请求协议(Nginx之Http模块系列之autoindex模块的具体使用)
- nginx做转发配置weight啥意思(Nginx中break与last的区别详析)
- nginx怎么支持http转https(Nginx域名转发https访问的实现)
- 宝塔nginx配置修改(宝塔面板安装Tengine报错:nginx: [emerg] invalid IPv6 address in resolver)
- nginx的15种优化方案(Nginx开启Brotli压缩算法实现过程详解)
- nginx报网络连接错误(Nginx 502 Bad Gateway错误原因及解决方案)
- nginx 使用手册(nginx服务器的下载安装与使用详解)
- nginxmac启动脚本(Mac M1 Nginx 配置多站点的实现)
- nginx状态查询(使用goaccess分析nginx日志的详细方法)
- nginxssl证书怎么设置(nginx结合openssl实现https的方法)
- nginx负载均衡与动静分离(Nginx配置之实现多台服务器负载均衡)
- 宝塔web服务器如何安装(宝塔面板开启Nginx/Apache防火墙四层防御的方法)
- nginx宝塔配置(宝塔面板安装云锁Nginx自编译web防护教程绝对有效)
- 如何设置nginx使用ip访问(nginx基于域名,端口,不同IP的虚拟主机设置的实现)
- nginx反向代理性能(nginx作grpc的反向代理踩坑总结)
- 吴启华与曾舜晞两代张无忌同框,戏里经典的他却没活出原著的潇洒(吴启华与曾舜晞两代张无忌同框)
- 经常发这三种 朋友圈 的人,要迅速屏蔽(经常发这三种朋友圈)
- 有种尴尬叫朋友圈忘屏蔽,大学生上演社死现场,父母亲自下场吐槽(有种尴尬叫朋友圈忘屏蔽)
- 朋友圈屏蔽你的人,可以直接看淡了(朋友圈屏蔽你的人)
- 金球奖只青睐那些会戴珠宝的女人(金球奖只青睐那些会戴珠宝的女人)
- 浙江省一个县,人口超40万,建县历史超1100年(浙江省一个县人口超40万)
热门推荐
- react组件的参数怎样定义的(详解React中组件之间通信的方式)
- docker容器内查看内存占用(docker 查看进程, 内存, cup消耗的情况)
- phpstudy怎么修改mysql版本(PhpStudy集成环境升级MySQL数据库版本的方法)
- js中作用域
- DataRow转换时对DBNULL的处理
- apachessl证书怎么获取(Apache SSL服务器配置SSL详解)
- python采集微信电脑端聊天信息(利用Python实现微信找房机器人实例教程)
- python怎么给rsa加密(Python生成rsa密钥对操作示例)
- vue时间转换(vue如何动态实时的显示时间浅析)
- sqlserver备份还原地址(SqlServer高版本数据备份还原到低版本)
排行榜
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9