php自訂session儲存目錄
今天一個客戶網站突然報出一堆錯誤提示,提示代碼如下:
Warning: session_start() [function.session-start]: open(/var/lib/php/session/sess_0dj5ol1fp235a0scu79s8c33t1, O_RDWR) failed: Permission denied (13) in /home/wethost/wwwroot/include/seccode.inc.php on line 7
Warning: Unknown: open(/var/lib/php/session/sess_0dj5ol1fp235a0scu79s8c33t1, O_RDWR) failed: Permission denied (13) in Unknown on line 0
Warning: Unknown: Failed to write session data (files). Please verify that the current setting of session.save_path is correct (/var/lib/php/session) in Unknown on line 0
以上提示的大概意思是說沒有讀取SESSION目錄中檔案的許可權。想必是虛擬機器主機提供方設定管理員做了某些修改導致的。為了免生麻煩,本次就直接在php中設定session的檔案儲存目錄吧。
在php代碼中加入如下代碼,要加在 session_start() 的前面。
ini_set('session.save_path', dirname(__FILE__).'/phpernote/');
或者:
session_save_path(dirname(__FILE__).'/phpernote/');
以上即將網站產生的session檔案儲存到了網站當前根目錄的phpernote目錄下面。
注意並不是所有配置參數都可以在指令碼中設定,這個跟參數的範圍有關係。
以下內容為引用 PHP的配置參數範圍說明
PHP_INI_PERDIR:指令可以在php.ini、httpd.conf或.htaccess檔案中修改;
PHP_INI_SYSTEM:指令可以在php.ini和httpd.conf中修改;
PHP_INI_USER:指令可以在使用者指令碼中修改;
PHP_INI_ALL:指令可以在任何地方修改;
所以只有PHP_INI_USER和PHP_INI_ALL範圍的參數才可以在指令碼中的設定生效。至於參數的具體範圍可以在網路中檢索。
您可能感興趣的文章
- php設定session的生存周期
- PHP報Fatal error Allowed memory size of...記憶體不足的錯誤應該如何解決
- php清空(刪除)指定目錄下的檔案,不刪除目錄檔案夾的方法
- php計算兩個日期相差多少天(日)的函數
- php session和cookie的區別
- phpMyAdmin Cannot start session without errors錯誤解決辦法
- php擷取指定日期所在星期的開始時間與結束時間的時間戳記
- php效能最佳化:使用 isset()判斷字串長度速度比strlen()更快
http://www.bkjia.com/PHPjc/827567.htmlwww.bkjia.comtruehttp://www.bkjia.com/PHPjc/827567.htmlTechArticlephp自訂session儲存目錄 今天一個客戶網站突然報出一堆錯誤提示,提示代碼如下: Warning: session_start() [function.session-start]: open(/var/lib/php/s...