thinkphp開發(fā)的一個(gè)項(xiàng)目,登錄成功后又跳轉(zhuǎn)到登錄頁面,在提交信息后輸出session都是正常的,沒有問題,但是頁面跳轉(zhuǎn)后,session出現(xiàn)丟失現(xiàn)象,無法正常完成登陸。
通過查找資料,發(fā)現(xiàn)原來是bom頭的原因。受COOKIE送出機(jī)制的限制,在這些文件開頭已經(jīng)有BOM的文件中,COOKIE無法送出(因?yàn)樵贑OOKIE送出前PHP已經(jīng)送出了文件頭),所以登入和登出功能失效。一切依賴COOKIE、SESSION實(shí)現(xiàn)的功能全部無效。
正確的處理方法是去掉某些文件的bom,一般情況是在入口文件出現(xiàn)的bom問題,我處理的方法是用Notepad++打開文件,格式選擇以UTF-8無bom格式編碼,然后保存,重新上傳到服務(wù)器即可。但一定要注意,去掉bom上傳到服務(wù)器之前需要把服務(wù)器上源文件刪掉,上傳覆蓋不能去掉bom。
去掉bom后,session cookie丟失問題解決。
以上所述是小編給大家介紹的php頁面跳轉(zhuǎn)session cookie丟失導(dǎo)致不能登錄等問題解決方法,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對服務(wù)器之家網(wǎng)站的支持!
原文鏈接:http://blog.csdn.net/ws753191675/article/details/53584463