如下图:发的是 https 请求,提示返回 501,错误提示 url 变成了 http 。
- GET 和 POST 请求没有问题,POST 和 DELELE 请求都正常
- 后台是 springboot 项目,只配置了基本的反向代理。
location /api/ {
proxy_pass http://localhost:8080/;
}

如下图:发的是 https 请求,提示返回 501,错误提示 url 变成了 http 。
location /api/ {
proxy_pass http://localhost:8080/;
}

|
bleepbloopMar 23, 2021
1
body 太大超过 nginx client_max_body_size 了?
|
|
106npoMar 23, 2021 via Android
2
返回的 url 是你们程序自己写的 和实际请求没关系
|
|
3
@bleepbloop 感谢您的回复,body 是`{"status":false}` ,应该不是这个问题。
|
|
xuanbgMar 23, 2021
4
改成 proxy_pass https://localhost:8080/;
然后问题变成接口怎么支持 https 的问题。。。不过,楼主你的错误是接口不支持 put 方法啊 |
|
bleepbloopMar 23, 2021
6
@zuoban 那还是抓个包,并且从服务端 debug 吧
|
|
7
@xuanbg 感谢您的回复,接口支持 PUT 方法。server 没配置 https 之前是正常的。我也觉得有可能是 https 代理成 http 的问题。
|
|
8
你这个 location 不是没命中么?
|
|
VegetableMar 23, 2021
9
这 location 是 api,图是是 admin-api,这也在你的计划之中吗
|
|
csliveMar 23, 2021
12
nginx 配 https 了吗
|
|
wei745359223Mar 23, 2021
14
设置下这几个参数试试
``` proxy_set_header X-Real-IP $remote_addr; proxy_set_header Host $http_host; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto $scheme; proxy_set_header X-Forwarded-Ssl on; proxy_set_header X-Forwarded-Host $host; ``` |
|
JirajineMar 23, 2021 via Android
15
换 caddy
|
|
17
找到原因了,CND 配置问题,谢谢各位。
|