get请求获取不到参数

问题描述:

后台管理系统进行跳转时,get传参后端接收不到。

排错过程:

  1. 检查前段页面参数命名。
  2. 打印所有GET请求参数,并没有参数被传递。
  3. 查看nginx-access与error日志,发现无报错,请求日志url也正常,返回200。(坑)
  4. 由于环境是刚搭的nginx环境,项目跑了很久,故问题一定出在环境上。
  5. 查看nginx配置,发现nginx重写时,没有拼接参数。(迷)get请求获取不到参数_第1张图片

解决方法:

将`try_files $uri /index.php; `改为`try_files $uri /index.php?$query_string;`,其中,$query_string为nginx接收的url参数。

知识恶补:

因为nginx接收到的url确实为带参数拼接的所以请求日志记录为有拼接的正确url。但是nginx有重写,导致内部重定向时无拼接参数。如:

www.xxxx.com/xxx?aa=1&bb=2

boot/xxx

你可能感兴趣的:(nginx)