phpMyAdmin没有正确删除PHP会话

时间:2013-10-16 16:01:08

标签: phpmyadmin php

我注意到每次登录phpMyAdmin时都会创建一个新的会话存储文件,并且永远不会删除它。让我澄清一下:

我登录phpMyAdmin并且我注意到PHP会话ID作为名为phpMyAdmin的cookie传递,其值为“44f4d5s4f4f4d5s”,例如PHP session.save_path下还有一个文件,其名称为“sess_”,后跟相同的值(“44f4d5s4f4f4d5s”)。这样我可以告诉该会话存储文件与PHPMyAmdin会话相关联。好吧,直到现在还没有错,PHPMyAdmin只是简单地使用会话。但是,如果我关闭浏览器,重新打开并再次浏览到PHPMyAdmin,则会创建一个新的会话ID,发送一个具有不同值的新cookie,当然会创建一个新的sess_ [ID HERE]文件。并且旧的不会从磁盘中删除,我认为,因为它们没有被使用,因为创建了一个新会话,它们将永远留在那里占用磁盘空间!

我几乎可以肯定这种行为是不可取的。也许phpMyAdmin没有调用session_destroy()?

我附上了我的config.inc.php,但我不知道从哪里开始想知道为什么会发生这种情况:

<?php
/* Servers configuration */
$i = 0;

/* Server: localhost [1] */
$i++;
$cfg['Servers'][$i]['verbose'] = '';
$cfg['Servers'][$i]['host'] = 'localhost';
$cfg['Servers'][$i]['port'] = '';
$cfg['Servers'][$i]['socket'] = '';
$cfg['Servers'][$i]['connect_type'] = 'tcp';
$cfg['Servers'][$i]['extension'] = 'mysqli';
$cfg['Servers'][$i]['auth_type'] = 'cookie';
$cfg['Servers'][$i]['user'] = 'root';
$cfg['Servers'][$i]['password'] = '';
$cfg['Servers'][$i]['AllowNoPassword'] = true;

/* End of servers configuration */

$cfg['blowfish_secret'] = '.......';
$cfg['DefaultLang'] = 'en';
$cfg['ServerDefault'] = 1;
$cfg['UploadDir'] = '';
$cfg['SaveDir'] = '';
?>

感谢。

1 个答案:

答案 0 :(得分:1)

这些会话文件不会永远存在。 PHP进行会话垃圾收集,请参阅http://php.net/manual/en/sessionhandler.gc.php

相关问题