Home > Article > Backend Development > How to automatically clean sessions regularly in php_php tips
The following will introduce you to an example of PHP setting the session to automatically clean up regularly, because the session defaults to automatically clear the memory of variables every 15 minutes, but it does not take effect for some time. Let’s take a look below.
After configuring php, by default php will generate the session into the /tmp directory, resulting in a large number of files in the /tmp directory, so the session needs to be cleaned regularly.
Modify 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
Note: Because this configuration modifies php.ini, the php process needs to be restarted.
The above is the entire content of this article. It teaches you how to set up PHP sessions to automatically clean up regularly. I hope you can gain something from it.