>  기사  >  백엔드 개발  >  php_php 팁에서 정기적으로 세션을 자동으로 정리하는 방법

php_php 팁에서 정기적으로 세션을 자동으로 정리하는 방법

WBOY
WBOY원래의
2016-05-16 20:04:561372검색

다음은 세션이 기본적으로 15분마다 자동으로 변수 메모리를 지우도록 설정되어 있지만 일정 시간 동안 적용되지 않기 때문에 PHP가 세션을 정기적으로 자동 정리하도록 설정하는 예를 소개합니다. 아래를 보세요.

php를 구성한 후 기본적으로 php는 /tmp 디렉토리에 세션을 생성하므로 /tmp 디렉토리에 많은 수의 파일이 생성되므로 세션을 정기적으로 정리해야 합니다.

php.ini 수정:

[root@hz scripts]# grep "session.save_path = " /usr/local/php/lib/php.ini 
;   session.save_path = "N;/path" 
;   session.save_path = "N;MODE;/path" 
;session.save_path = "/tmp" 
session.save_path = "2;/tmp/session" 
[root@hz ~]# cat /byrd/script/Cleartmpsen.sh 
#!/bin/bash 
# Version:1.0 
# Author:Byrd 
# Site:www.t4x.org 
# Contact:root#t4x.org 
# This is script will clear php session before 3 hours. 
i="0 1 2 3 4 5 6 7 8 9 a b c d e f" 
for byrd in $i; 
do 
  for x in $i; 
  do 
    mkdir -p /tmp/session/$byrd/$x; 
  done; 
done 
chown -R bywww:bywww /tmp/session 
chmod -R 1777 /tmp/session 
find /tmp/session -amin +180 -exec rm -rf {} \; 
if [ `grep 'session.save_path =' /usr/local/php/lib/php.ini | wc -l` -eq 3 ];then 
  sed -i 's#;session.save_path = "/tmp"#;session.save_path = "/tmp"\nsession.save_path = "2;/tmp/session"#g' /usr/local/php/lib/php.ini 
else 
  exit 1 
fi 


定时任务: 
[root@hz scripts]# echo '#This is a config php session BY:BYRD AT:2015-11-12' >>/var/spool/cron/root 
[root@hz scripts]# echo '0 3 * * 0 /bin/bash /byrd/scripts/spehspsion.sh >/dev/null 2>&1' >>/var/spool/cron/root 

참고: 이 구성은 php.ini를 수정하므로 php 프로세스를 다시 시작해야 합니다.

위 내용은 이 기사의 전체 내용입니다. 정기적으로 자동 정리되도록 PHP 세션을 설정하는 방법을 설명합니다.

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.