BLUE
PHP 7.4.33
Path:
//lib/php
Run
Logout
Edit File
Size: 2.91 KB
Close
//lib/php/sessionclean
Text
Base64
#!/bin/sh -e # # sessionclean - a script to cleanup stale PHP sessions # # Copyright 2013-2015 Ondřej Surý <ondrej@sury.org> # # Permission is hereby granted, free of charge, to any person obtaining a copy of # this software and associated documentation files (the "Software"), to deal in # the Software without restriction, including without limitation the rights to # use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of # the Software, and to permit persons to whom the Software is furnished to do so, # subject to the following conditions: # # The above copyright notice and this permission notice shall be included in all # copies or substantial portions of the Software. # # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR # IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS # FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR # COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER # IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN # CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. SAPIS="apache2:apache2 apache2filter:apache2 cgi:php@VERSION@ fpm:php-fpm@VERSION@ cli:php@VERSION@" # Iterate through all web SAPIs ( proc_names="" for version in $(/usr/sbin/phpquery -V); do for sapi in ${SAPIS}; do conf_dir=${sapi%%:*} proc_name=${sapi##*:} if [ -e "/etc/php/${version}/${conf_dir}/php.ini" ] && [ -x "/usr/bin/php${version}" ]; then # Get all session variables once so we don't need to start PHP to get each config option session_config=$(PHP_INI_SCAN_DIR=/etc/php/${version}/${conf_dir}/conf.d/ "/usr/bin/php${version}" -c "/etc/php/${version}/${conf_dir}/php.ini" -d "error_reporting='~E_ALL'" -r 'foreach(ini_get_all("session") as $k => $v) echo "$k=".$v["local_value"]."\n";') save_handler=$(echo "$session_config" | sed -ne 's/^session\.save_handler=\(.*\)$/\1/p') save_path=$(echo "$session_config" | sed -ne 's/^session\.save_path=\(.*;\)\?\(.*\)$/\2/p') gc_maxlifetime=$(($(echo "$session_config" | sed -ne 's/^session\.gc_maxlifetime=\(.*\)$/\1/p')/60)) if [ "$save_handler" = "files" ] && [ -d "$save_path" ]; then proc_names="$proc_names $(echo "$proc_name" | sed -e "s,@VERSION@,$version,")"; printf "%s:%s\n" "$save_path" "$gc_maxlifetime" fi fi done done # first find all open session files and touch them (hope it's not massive amount of files) for pid in $(pidof $proc_names); do find "/proc/$pid/fd" -ignore_readdir_race -lname "$save_path/sess_*" -exec touch -c {} \; 2>/dev/null done ) | \ sort -rn -t: -k2,2 | \ sort -u -t: -k 1,1 | \ while IFS=: read -r save_path gc_maxlifetime; do # find all files older then maxlifetime and delete them find -O3 "$save_path/" -ignore_readdir_race -depth -mindepth 1 -name 'sess_*' -type f -cmin "+$gc_maxlifetime" -delete done exit 0
Save
Close
Exit & Reset
Text mode: syntax highlighting auto-detects file type.
Directory Contents
Dirs: 10 × Files: 9
Delete Selected
Select All
Select None
Sort:
Name
Size
Modified
Enable drag-to-move
Name
Size
Perms
Modified
Actions
5.6
DIR
-
drwxr-xr-x
2023-12-05 09:14:38
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
7.0
DIR
-
drwxr-xr-x
2025-04-21 11:51:08
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
7.4
DIR
-
drwxr-xr-x
2023-11-23 12:00:44
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
8.2
DIR
-
drwxr-xr-x
2024-03-05 04:27:49
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
8.4
DIR
-
drwxr-xr-x
2025-07-11 11:14:24
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
20131226
DIR
-
drwxr-xr-x
2023-12-05 11:31:04
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
20151012
DIR
-
drwxr-xr-x
2025-04-21 11:51:08
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
20190902
DIR
-
drwxr-xr-x
2024-03-05 04:27:40
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
20220829
DIR
-
drwxr-xr-x
2024-03-05 04:27:49
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
20240924
DIR
-
drwxr-xr-x
2025-07-11 11:14:24
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
packaging
13 B
lrw-r--r--
2024-12-04 15:44:19
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
php-fpm-socket-helper
514 B
lrwxr-xr-x
2024-12-04 15:44:19
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
php-helper
4.73 KB
lrw-r--r--
2024-12-04 15:44:19
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
php-maintscript-helper
9.02 KB
lrw-r--r--
2024-12-04 15:44:19
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
php5.6-fpm-reopenlogs
309 B
lrwxr-xr-x
2023-09-02 07:57:45
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
php7.0-fpm-reopenlogs
309 B
lrwxr-xr-x
2024-12-24 06:42:54
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
php8.2-fpm-reopenlogs
309 B
lrwxr-xr-x
2024-01-20 14:17:05
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
php8.4-fpm-reopenlogs
309 B
lrwxr-xr-x
2025-07-03 12:41:53
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
sessionclean
2.91 KB
lrwxr-xr-x
2024-12-04 15:44:19
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
Zip Selected
If ZipArchive is unavailable, a
.tar
will be created (no compression).