之前项目好好的运行 没有修改给前端页面也没有修改过后台程序
突然间后台报错 java.io.IOException: 连接被对方重设
浏览器报错403
开始踩坑之路
打开百度 搜索导致403错误的原因
按照上面的步骤
ip查询了没有被拉黑
防火墙查看了端口已经开放
后面因为紧急情况,需要立马访问系统,无奈只能移系统部署到其他服务器上,同样的前端代码 同意的后台程序,
部署到其他服务器居然可以正常访问,黑人问号!!!!!!!!!!!!!
后面问了一些大佬 开始提供思路 慢慢指向nginx配置问题
开始思考 首先排查是否是前端问题
开始访问端口的静态文件 发现是可以访问的
那就说明前端的静态文件没有问题
开始排查后端
proxy_set_header Host $host; 代表转发时不改变请求头“Host”的值。所以转发过去,对方api.dalu.com不识别,所以返回403.
修改配置文件如下:
其他配置说明
如果客户端请求头中没有携带这个头部,那么传递到后端服务器的请求也不含这个头部。 这种情况下,更好的方式是使用$host变量——它的值在请求包含“Host”请求头时为“Host”字段的值,在请求未携带“Host”请求头时为虚拟主机的主域名:
proxy_set_header Host $host;
此外,服务器名可以和后端服务器的端口一起传送:
proxy_set_header Host h o s t : host:host:proxy_port;
如果某个请求头的值为空,那么这个请求头将不会传送给后端服务器:
proxy_set_header Accept-Encoding “”;
注释掉这个居然就ok了 后续在仔细讲 因为下班了 可以过愉快周末