1、找到php.ini配置文件,找到session.save_path,修改如下:

其中2表示session存储的目录深度,也就是分目录,避免一个目录下文件太多,造成IO负担。
session.save_path = "2;D:\xxx\php54\session" 2、如上设置后,重启apache后,在php文件session_start()后会报错。
Warning: session_start(): open(D:\xxx\php54\session\b\9\sess_b9h5uo3bra9j28f4p4rim8mg02, O_RDWR) failed: No such file or directory (2) in D:\wwwroot\test\index.php on line 2
Warning: Unknown: open(D:\xxx\php54\session\b\9\sess_b9h5uo3bra9j28f4p4rim8mg02, O_RDWR) failed: No such file or directory (2) 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 (2;D:\xxx\php54\session) in Unknown on line 0 3、原来是session下的\b\9目录需要手动创建,所以写了一个函数。
<?php
function createSessionDir($sessionPath = '') {
if(empty($sessionPath)) {
return false;
}
$dirNameArr = array_merge(range(0, 9), range('a', 'z'));
$sessionPath = rtrim($sessionPath, '\/') . DIRECTORY_SEPARATOR;
foreach ($dirNameArr as $dirName) {
$dirPath = $sessionPath . $dirName . DIRECTORY_SEPARATOR;
foreach ($dirNameArr as $subDirName) {
@mkdir($dirPath . $subDirName, 0777, true);
}
}
} createSessionDir('D:\xxx\php54\session');

php自定义session存储路径的更多相关文章

  1. Session 知识点再整理(二) 自定义 Session 存储机制

    对于访问量大的网站,用默认的 Session 存储方式(以文件存储)不适合,因为文件的 I/O 开销会非常大,另外 Session 机制本身使 Session 不能跨机访问,在 Web 集群中无法达到 ...

  2. [PHP]自定义session存储机制的两种方案

    ---------------------------------------------------------------------------------------------------- ...

  3. (转载)【TP5.0】设置session有效时长+修改默认存储路径

        //查看默认session存储路径:print_r(session_save_path());   \thinkphp\helper.php if (!function_exists('ses ...

  4. session 存储方式

    Session 的存储方式 在 php.ini 文件中,进行配置. 涉及配置参数: - session.save_handler - session.save_path 注意:这两个参数可以在 PHP ...

  5. 可灵活扩展的自定义Session状态存储驱动

    Session是互联网应用中非常重要的玩意儿,对于超过单台部署的站点集群,都会存在会话共享的需求.在web.config中,微软提供了sessionstate节点来定义不同的Session状态存储方式 ...

  6. 【ASP.NET Core】自定义Session的存储方式

    在开始今天的表演之前,老周先跟大伙伴们说一句:"中秋节快乐". 今天咱们来聊一下如何自己动手,实现会话(Session)的存储方式.默认是存放在分布式内存中.由于HTTP消息是无状 ...

  7. 自定义Redis作为Session存储服务提供

    之前看网上介绍可使用Redis自定义Session托管,使用第三方的Harbour.RedisSessionStateStore GitHub:https://github.com/TheCloudl ...

  8. python_way ,自定义session

    python_way ,自定义session container = {} #可以是数据库,可以是缓存也可以是文件 class Session: def __init__(self, handler) ...

  9. ios存储 plist 偏好设置 自定义对象存储

    1,plist Plist注意:不能存储自定义对象 Plist:数组和字典,  如何判断一个对象能不能使用Plist,就看下有没有writeToFile 获取应用的文件夹(应用沙盒) NSString ...

随机推荐

  1. windows挂载gluseter NFS卷

    windows下挂载gluster提供的NFS卷 服务器端的配置: 首先配置好NFS共享,找一台linux试一下,确保挂载成功.linux客户端执行:mount.nfs 10.33.70.20:tes ...

  2. 并发工具类(五) Phaser类

    前言   JDK中为了处理线程之间的同步问题,除了提供锁机制之外,还提供了几个非常有用的并发工具类:CountDownLatch.CyclicBarrier.Semphore.Exchanger.Ph ...

  3. 异常处理的设计与重构 pdf

    百度网盘: https://pan.baidu.com/s/1hsQIEGk

  4. video元素和audio元素

    内容: 1.video元素 2.audio元素 注:这两个元素均是HTML5新增的元素 1.video元素 (1)用途 <video> 标签定义视频,比如电影片段或其他视频流 (2)标签属 ...

  5. 1.JSONObject与JSONArray的使用

    参考文献: http://blog.csdn.net/huangwuyi/article/details/5412500 1.JAR包简介 要使程序可以运行必须引入JSON-lib包,JSON-lib ...

  6. spring Ioc和DI

    spring的“控制反转”和“依赖注入”,个人看来是一个意思. 传统java程序中,使用一个对象的时候,都需要先new Object()创建一个新对象,才能使用.对象的控制权,在程序手里. 使用spr ...

  7. 进程和创建线程的两种方法(threading.Thread)

    进程 如QQ 要以一个整体的形式暴露给操作系统管理,里面包含对各种资源的调用,内存的管理, 网络接口的调用等,进程就是各种资源管理的集合 线程:是操作系统最小的调度单位,是一串指令的结合 进程 要操作 ...

  8. shelve模块使用说明

    一种字典形式储存数据的方式 import datetime, shelve d = shelve.open('shelve_test.txt') info = {'age':22, 'job':'it ...

  9. as3 对于加载进来多层swf缩放操作

    //swf实际尺寸 var oldWidth:Number = frameLder.contentLoaderInfo.content.width; var oldHeight:Number = fr ...

  10. Gradle 多项目构建

    Gradle可以轻松处理各种大小规模的项目.小项目由一个单一的构建文件和一个源代码树构成. 大项目可以将其拆分成更小的,相互依赖的模块,以便更容易理解. 多项目构建的结构特征: 在项目的根目录或主目录 ...