首页 > 生活服务 > 读书学习

读书学习

Nginx反向代理https请求个别文件报错400 Bad Request

管理员 2年前 1963浏览
Nginx反向代理https请求个别文件报错400 Bad Request-下一朵云

一、问题描述

Nginx反向代理容器里边的服务,可以正常打开,但是测试发现通过https请求某个文件时会返回400 Bad Request错误。如图1 ,请求/json时就会报错400 Bad Request。

Nginx反向代理https请求个别文件报错400 Bad Request-下一朵云
图1 400 Bad Request

系统环境:

  • CentOS Linux release 7.9.2009 (Core)

  • Docker version 1.13.1, build 7d71120/1.13.1

  • nginx version: nginx/1.22.0

Nginx反代配置文件:

其中8443是容器映射出来的端口,容器和Nginx都在同一台机器。

 server {         listen       443 ssl;         server_name  saopigu.cn;         access_log  logs/01.log  main;         error_log  logs/01error.log;         ssl_certificate      cert01.pem;         ssl_certificate_key  cert01.key;         ssl_session_cache    shared:SSL:1m;         ssl_session_timeout  5m;         ssl_ciphers  HIGH:!aNULL:!MD5;         ssl_prefer_server_ciphers  on;         add_header Strict-Transport-Security "max-age=15768000; includeSubDomains; preload" always;         location / {              proxy_pass https://127.0.0.1:8443;              proxy_set_header Host $http_host;              client_max_body_size 4096m;          }   }

二、问题解决

测试直接访问容器的8443端口没有这个报错,只有通过反代的时候才会报错,在网上搜索了各种Nginx反代报错400的文章都无法解决,分析请求和响应的内容,应该是反代后cookie的问题导致的。

解决办法:

proxy_pass设置为宿主机的IP

Nginx配置文件如下:

 location / {              proxy_pass https://192.168.110.231:8443;              proxy_set_header Host $http_host;              client_max_body_size 4096m;          }

修改配置后,恢复正常,如图2

Nginx反向代理https请求个别文件报错400 Bad Request-下一朵云
图2 200 OK

为什么会出现这个问题,原理暂时还没搞清楚,还请技术大佬在评论区多多指教!

三、优化配置( *非必要,可以不配置 )

如果宿主机的IP会有变动,代理的容器又较多,手动修改每个反代的配置就会很愚蠢,所以有个更好的解决办法。

vi /etc/hosts

添加一行

192.168.110.231 proxylocalhost

此时修改Nginx配置文件:

 location / {              proxy_pass https://proxylocalhost:8443;              proxy_set_header Host $http_host;              client_max_body_size 4096m;          }

宿主机IP变动时,只需要修改一下hosts文件即可。



版权声明:本文为原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
关注微信公众号:"cq_xifan";

评论

收藏

评论列表

  • 这篇文章还没有收到评论,赶紧来抢沙发吧~

Powered By 重庆饭哥 © 2014-2022 教学资源分享站 渝ICP备20005643号-1

相信有一天,理想主义终将所向披靡.

Design by © 2021 XIFAN. Powered by 重庆饭哥

站点声明: 本站转载作品版权归原作者及来源网站所有,原创内容作品版权归作者所有,任何内容转载、商业用途等均须联系原作者并注明来源。

友情链接: 官方网站 饭哥在线工具 饭哥导航 在线运行 博客交流社区 重庆艺术工程职业学院