ホームページ > php教程 > php手册 > php自定义session保存目录

php自定义session保存目录

WBOY
リリース: 2016-06-13 09:29:57
オリジナル
1278 人が閲覧しました

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()更快
関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のおすすめ
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート