程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> PHP編程 >> 關於PHP編程 >> php自定義session保存目錄

php自定義session保存目錄

編輯:關於PHP編程

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()更快

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved