PHPMyAdmin 自动会话销毁问题
Posted
技术标签:
【中文标题】PHPMyAdmin 自动会话销毁问题【英文标题】:PHPMyAdmin automatic session destroy issue 【发布时间】:2016-01-03 16:07:45 【问题描述】:我正在使用带有 LAMP 的 Ubuntu 服务器,并安装了 phpMyadmin 来管理数据库。默认情况下 phpmyadmin 会话在 1440 秒后销毁。
我浏览过不同的在线教程和论坛,但没有一种方法有效。
【问题讨论】:
【参考方案1】:根据documentation:
编辑 phpMyAdminconfig.inc.php
并添加(或编辑)$cfg['LoginCookieValidity']
指令,例如 $cfg['LoginCookieValidity'] = 10080
编辑 PHP 配置文件 php.ini
(确保编辑正确的;您可以使用 phpinfo() 定位正确的位置)并将 session.gc_maxlifetime
的时间延长到至少与 LoginCookieValidity 相同的值.
编辑
您不想更改所有应用程序的session.gc_maxlifetime
,但仍有希望。由于您使用的是 Apache,并且如果您的 Apache 配置中相应的 <Directory>
条目包含 AllowOverride Options
(或 AllowOverride All
),那么您应该能够基于每个应用程序进行配置,以仅影响 phpMyAdmin。
您需要在 phpMyAdmin 目录的顶层创建一个 .htaccess 文件,并包含如下行:
php_value session.gc_maxlifetime 10080
这将强制仅对该文件夹(和子目录)进行修改设置,因此只要它位于您的 phpMyAdmin 文件夹中,它只会影响 phpMyAdmin 应用程序。
如果您愿意,您应该能够创建(或修改)Apache 虚拟主机并直接在 Apache 配置中编辑 PHP 设置;配置指令将完全相同,
php_value session.gc_maxlifetime 10080
这些方法只有在AllowOverride
指令设置为All
或Options
时才有效; None
等较小的设置将不允许这些更改。
More details.
【讨论】:
感谢您的努力,但我不想更改默认的 php 会话超时/cookie 销毁时间,因为它会影响我服务器上运行的所有其他网站。我只想为 PHPMyAdmin 更改它 不幸的是,PHP 会话会覆盖您在 phpMyAdmin 中设置的任何内容,这是有充分理由的——应用程序不应设置比系统管理员规定的更高的资源限制。根据您的网络服务器配置,您可能被允许仅为 phpMyAdmin 文件夹设置 gc_maxlifetime 值。我将修改我的答案以包含更多详细信息。 我也面临同样的问题。以上是关于PHPMyAdmin 自动会话销毁问题的主要内容,如果未能解决你的问题,请参考以下文章