首頁  >  文章  >  後端開發  >  php頁面跳轉session cookie遺失導致無法登入等問題的解決方法

php頁面跳轉session cookie遺失導致無法登入等問題的解決方法

巴扎黑
巴扎黑原創
2016-12-22 14:02:482066瀏覽

thinkphp開發的一個項目,登入成功後又跳到登入頁面,在提交資訊後輸出session都是正常的,沒有問題,但是頁面跳轉後,session出現遺失現象,無法正常完成登陸。

透過查找資料,發現原來是bom頭的原因。受COOKIE送出機制的限制,在這些檔案開頭已經有BOM的檔案中,COOKIE無法送出(因為在COOKIE送出前PHP已經送出了檔案頭),所以登入和登出功能失效。一切都依賴COOKIE、SESSION實現的功能全部無效。

正確的處理方法是去掉某些文件的bom,一般情況是在入口文件出現的bom問題,我處理的方法是用Notepad++打開文件,格式選擇以UTF-8無bom格式編碼,然後保存,重新上傳到伺服器即可。但一定要注意,去掉bom上傳到伺服器之前需要把伺服器上原始檔刪掉,上傳覆蓋不能去掉bom。

去掉bom後,session cookie遺失問題解決。


陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn