本文較為詳細(xì)的分析了php提示Failed to write session data錯(cuò)誤的解決方法。分享給大家供大家參考。具體方法如下:
一、問題:
提示信息:Warning: Failed to write session data (files).Please verify that the current setting of session.save_path is correct () in Unknown on line 0
二、解決方法:
代碼如下:
這個(gè)為自定義文件夾 指向錯(cuò)誤導(dǎo)致,系統(tǒng)默認(rèn)不會(huì)出現(xiàn),提示有時(shí)還有可能是目錄沒有寫的權(quán)限,所以大家給權(quán)限就可以了。
由于PHP的工作機(jī)制,它并沒有一個(gè)daemon線程來定期的掃描Session信息并判斷其是否失效,當(dāng)一個(gè)有效的請(qǐng)求發(fā)生時(shí),PHP 會(huì)根據(jù)全局變量 session.gc_probability和session.gc_divisor的值,來決定是否啟用一個(gè)GC, 在默認(rèn)情況下,session.gc_probability=1, session.gc_divisor =100也就是說有1%的可能性啟動(dòng)GC(也就是說100個(gè)請(qǐng)求中只有一個(gè)gc會(huì)伴隨100個(gè)中的某個(gè)請(qǐng)求而啟動(dòng)).
PHP垃圾回收機(jī)制的工作就是掃描所有的Session信息,用當(dāng)前時(shí)間減去session最后修改的時(shí)間,同session.gc_maxlifetime參數(shù)進(jìn)行比較,如果生存時(shí)間超過gc_maxlifetime(默認(rèn)24分鐘),就將該session刪除。
但是,如果你Web服務(wù)器有多個(gè)站點(diǎn),多個(gè)站點(diǎn)時(shí),GC處理session可能會(huì)出現(xiàn)意想不到的結(jié)果,原因就是:GC在工作時(shí),并不會(huì)區(qū)分不同站點(diǎn)的session.
希望本文所述對(duì)大家的PHP程序設(shè)計(jì)有所幫助。
新聞熱點(diǎn)
疑難解答