网站首页 > 技术教程 正文
问题描述[what]
原来的Nginx中的代理配置一直工作正常,但是最近莫名奇妙的出现返回的内容是另一个应用的内容,很是郁闷
关键配置如下
server {
listen 80;
server_name a.com
location /proxy {
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_redirect off;
proxy_pass https://b.com;
}
}
问题原因
经过排查发现是因为下面的proxy_set_header配置引起的
proxy_set_header Host $host
这个配置将请求的Host设置成为本应用的域名即a.com;导致b.com的Nginx服务器处理请求会读取Host的值即“”a.com,看过我上一遍文章[你是否明白Nginx是如何处理用户请求?]的伙伴就会明白,这个情况下b.com的Nginx服务器它会使用配置的默认服务(server中配置了default_server),如果没有配置默认服务则会用第一个server块;所以导致响应的内容不是预想的。
那么原来为什么是响应是正确的呢?因为原来b.com的Nginx只有一个server块
深究
问:如果我们不配置proxy_set_header Host $host;b.com的Nginx服务器读取的Host值会是什么?
答:读取的是 proxy_pass 这个指令设置的url对应的Host
总结
在写Nginx配置的时候,一定要搞明白每个指令的作用是什么,才去做适当的配置;而不是网上直接粘贴复制
猜你喜欢
- 2024-10-11 Docker四种网络模式(Bridge,Host,Container,...
- 2024-10-11 HTTP 头字段 Origin、Host 和 Referer 有什么区别?
- 2024-10-11 每日漏洞 | Host头攻击(http头hostname攻击漏洞)
- 2024-10-11 Docker容器实战之数据持久化+网络模式+资源限制
- 2024-09-19 Nginx Proxy Manager - Docker 建站最佳伴侣
- 2024-09-19 高性能负载均衡:nginx搭建tomcat集群
- 2024-09-19 Nginx路由匹配规则location的小总结
- 2024-09-19 使用 nginx 反向代理多个 docker 容器
- 2024-09-19 Nginx配置虚拟主机的三种方式(nginx虚拟主机配置文件)
- 2024-09-19 Nginx开启gzip压缩演示(nginx怎么打开)
你 发表评论:
欢迎- 最近发表
-
- Linux新手必看:几种方法帮你查看CPU核心数量
- linux基础命令之lscpu命令(linux中ls命令的用法)
- Linux lscpu 命令使用详解(linux常用ls命令)
- 如何查询 Linux 中 CPU 的数量?这几个命令要知道!
- 在linux上怎么查看cpu信息(linux如何查看cpu信息)
- 查看 CPU 的命令和磁盘 IO 的命令
- 如何在CentOS7上改变网卡名(centos怎么改网卡名字)
- 网工必备Linux网络管理命令(网工必备linux网络管理命令是什么)
- Linux 网络命令知多少(linux 网络 命令)
- Linux通过命令行连接wifi的方式(linux命令行连接无线网)
- 标签列表
-
- 下划线是什么 (87)
- 精美网站 (58)
- qq登录界面 (90)
- nginx 命令 (82)
- nginx .http (73)
- nginx lua (70)
- nginx 重定向 (68)
- Nginx超时 (65)
- nginx 监控 (57)
- odbc (59)
- rar密码破解工具 (62)
- annotation (71)
- 红黑树 (57)
- 智力题 (62)
- php空间申请 (61)
- 按键精灵 注册码 (69)
- 软件测试报告 (59)
- ntcreatefile (64)
- 闪动文字 (56)
- guid (66)
- abap (63)
- mpeg 2 (65)
- column (63)
- dreamweaver教程 (57)
- excel行列转换 (56)
本文暂时没有评论,来添加一个吧(●'◡'●)