前言:最近把服務器從apache改爲了nginx,結果導致edusoho程序無法自動跳轉登陸了
爲了這個bug,檢查了好幾個小時,調試跟蹤發現,如果判斷用戶沒登陸,edusoho會報一個404錯誤,並且返回錯誤代碼:4040101
,JS判斷是這個錯誤代碼,就會跳出登陸彈窗、或者引導到微信授權登陸。
但是在nginx環境下,不返回正確的錯誤代碼,返回了code:0
經過檢查發現,寶塔對於nginx的配置多了一句
error_page 404 /404.html;
因爲edusoho是報404,然後再進行下邊的邏輯,但是這裏捕獲了404,就直接跳轉到了404.html,但是由於服務器沒有404.html這個文件,然後又報了個404出來,結果就返回了錯誤的錯誤信息
解決辦法:
把error_page前邊加個#
,註釋掉這2句就OK了