解决 nginx 转发POST变成GET

解决 nginx 转发POST变成GET

  • nginx 转发问题
    • 问题现象
      • nginx 配置
      • http 协议
    • 解决方案
      • 去掉 localtion 配置 url 后面的末尾 /
      • 验证成功

nginx 转发问题

解决:http post 通过 nginx 转发后变成 http get

问题现象

nginx 配置

解决 nginx 转发POST变成GET_第1张图片

  • 问题url : /hnrepair/api/appSpPdFault/upLoadFile2
  • 客户端发送 http post 请求, 通过 nginx 转发后 tomcat 后端收到的却是 get

http 协议

  • 网上搜索资料大部分都是 https post 请求通过 nginx 转发会变成 get, 不是我想要的解决方案,偶然看到一个描述说是把 url 后面的 / 取掉就好了,
  • 其他的 url 像 /hnrepair/api/appSpPdFault/list/from 接口却没有问题。初一看这两个 location 都一样,仔细想想发现
 location  ^~  /hnrepair/api/appSpPdFault/upLoadFile2/
  • 也是请求url 完整的地址, 不像下面只是匹配前面部分。
 location  ^~  /hnrepair/api/

解决方案

去掉 localtion 配置 url 后面的末尾 /

解决 nginx 转发POST变成GET_第2张图片

验证成功

同一接口从GET 变成 POST
解决 nginx 转发POST变成GET_第3张图片
OVER!

你可能感兴趣的:(nginx,nginx)