edusoho使用宝塔nginx,post传参变为get,服务器错误,导致无法登陆的问题解决

本文记录了将服务器从Apache切换到Nginx后,Edusoho程序出现无法自动跳转登录的问题及解决过程。在Nginx环境下,原本的404错误被错误地捕获并返回错误信息,导致登录机制失效。通过注释掉宝塔中关于404页面的错误处理配置,成功解决了此问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

前言:最近把服务器从apache改为了nginx,结果导致edusoho程序无法自动跳转登陆了

为了这个bug,检查了好几个小时,调试跟踪发现,如果判断用户没登陆,edusoho会报一个404错误,并且返回错误代码:4040101,JS判断是这个错误代码,就会跳出登陆弹窗、或者引导到微信授权登陆。

但是在nginx环境下,不返回正确的错误代码,返回了code:0

经过检查发现,宝塔对于nginx的配置多了一句

error_page 404 /404.html;

宝塔的nginx配置
因为edusoho是报404,然后再进行下边的逻辑,但是这里捕获了404,就直接跳转到了404.html,但是由于服务器没有404.html这个文件,然后又报了个404出来,结果就返回了错误的错误信息

解决办法:
把error_page前边加个#,注释掉这2句就OK了

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值