對這文章發表回應
發表限制: 非會員 可以發表
發表者: 冷日 發表時間: 2010/3/15 8:58:23
php 出現 Cannot send session cache limiter 的解決方式
原本用 Big5 編碼設計的 PHP程式, 在配合 客戶端的環境改成 utf-8 格式編碼之後, 狀況百出, 問題不斷發生, 原先可以執行的程式, 都相繼出現錯誤訊息.
這次是在判斷使用者登入狀態, 啟動了 session 預備來記錄使用者的登入相關訊息, 結果, 在 utf-8編碼的文件 (配合 utf-8 的網頁編碼, 文件本身也要改成 utf-8 編碼格式) 下執行, 都會出現 Cannot send session cache limiter 的錯誤訊息...
原來還是跟在 php 裡面 include 檔案所發生的問題一樣, 若以 utf-8 格式編碼的文件, 是以 windows 儲存成 utf-8 的檔案格式, 本身即帶有 BOM (Byte-Order Mark), 所以即使該份 php 文件本身在 session_start() 之前沒有輸出任何字元, 但其實是隱含了 BOM, 導致網頁發生錯誤....
DreamWeaver CS3 版本可以在另存檔案的時候,檢視該文件是否包含有 BOM, 但實際變更設定後儲存( 個人測試結果, 或許有其他解), 卻不能真正取消 BOM 的儲存.
還是使用 如 UltraEdit 的軟體來另存新檔吧! 應該就可以解決上述問題.
原文出處:ch3128:php 出現 Cannot send session cache limiter 的解決方式 - 樂多日誌