记录一个nginx踩坑过程
踩坑配置:
1 2 3 4 5 6 7 | location /aaa/ { proxy_pass https: //218.95.181.84:8088/; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection "Upgrade" ; proxy_set_header Host $http_host; proxy_cookie_path /aaa /; } |
得到的结果,配置这个代理下其他接口能正常访问
另外一个get请求配置反代理生效
关于这个配置的解释:
proxy_set_header
是nginx配置中的一个指令,用于设置代理请求中的HTTP头信息。而 Host $http_host
是一个具体的设置。
在HTTP请求中,Host
头信息用于指定要访问的主机名或域名。$http_host
是nginx内置变量,它表示客户端发送的HTTP请求中 Host
头的值。通过使用 proxy_set_header Host $http_host;
这个配置,您可以将客户端请求中的 Host
头信息传递给后端服务器。
这在代理服务器的配置中非常常见,特别是当nginx用作反向代理时。反向代理服务器接收客户端的请求,并将请求转发到后端服务器,同时也重新构造了一些头信息,以确保后端服务器能够通过这些头信息识别原始请求的来源。
总结起来,proxy_set_header Host $http_host;
这个配置项的作用是将客户端请求中的 Host
头信息传递给后端服务器,确保后端服务器能够正确地处理来自不同域名的请求。
修改后的配置:
location /aaa/ { proxy_pass https://218.95.181.84:8088/; }
主要是删除这个配置就可以了;
1 | proxy_set_header Host $http_host; |
具体原因我目前也不是很清楚
1 | |
本文来自博客园,作者:zhupan,转载请注明原文链接:https://www.cnblogs.com/zhupanpan/p/17653580.html
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?