PHP Session文件的散列存储及过期删除
2014-07-07 14:33
686 查看
因为服务器访问量大,产生了大量的session文件,若这些文件默认都保存在/tmp目录下,会造成服务器性能问题,所以需要把session文件散列存储。
session_save_path(“2;0666;/var/www/html/session”);
php并不会自动创建这些目录,所以我写了个shell脚本来创建这些目录:
开头的3个变量可以自己根据需要设置
虽然php中有配置自动清理session,但在这种多级目录存储的情况下并不会生效,所以我们要自己写个脚本清理session文件,脚本内容如下:
find /var/www/html/session -mtime +1 -exec rm -rf {} \;
放入cron中,定期执行。
session_save_path(“2;0666;/var/www/html/session”);
php并不会自动创建这些目录,所以我写了个shell脚本来创建这些目录:
#! /bin/sh subdir="session" depth="2" hash_chars="0 1 2 3 4 5 6 7 8 9 a b c d e f" makedir() { if test "$2" = "0"; then return fi for i in $hash_chars; do newpath="$1/$i" mkdir $newpath || exit 1 echo "mkdir $newpath" makedir $newpath `expr $2 - 1` done } mkdir session makedir $subdir $depth;
开头的3个变量可以自己根据需要设置
虽然php中有配置自动清理session,但在这种多级目录存储的情况下并不会生效,所以我们要自己写个脚本清理session文件,脚本内容如下:
find /var/www/html/session -mtime +1 -exec rm -rf {} \;
放入cron中,定期执行。
相关文章推荐
- php大量session存储到内存中,散列及过期回收
- PHP临时文件session的分级存储与定期删除
- php大量session存储到内存中,散列及过期回收
- 通过SQL存储过程删除过期的数据库Bak备份文件或其它文件
- 通过SQL存储过程删除过期的数据库Bak备份文件
- 实现PHP中session存储及删除变量
- php session 阻塞 过期不自动清除session文件
- SQL Server ->> 调用系统内建扩展存储过程"master.dbo.xp_delete_file"删除过期备份文件
- 通过CLR存储过程删除过期的数据库Bak备份文件
- redis 替代php文件存储session
- PHP:删除linux服务器上 过期的文件
- PHP之Session配置文件存储路径
- PHP技术 Session的散列及过期回收
- 通过SQL存储过程删除过期的数据库Bak备份文件或其它文件
- 通过SQL存储过程删除过期的数据库Bak备份文件
- php中session过期但记录并不删除的原因
- redis 替代php文件存储session的实例
- C# 删除某文件夹下 过期文件
- php删除/复制文件夹及其文件夹下所有文件
- php 删除无限级目录与文件代码共享