为了账号安全,请及时绑定邮箱和手机立即绑定

phpMyAdmin 4.6 持久登录

phpMyAdmin 4.6 持久登录

PHP
肥皂起泡泡 2022-12-30 17:12:38
有没有办法在 phpMyAdmin 4.6 中永远保持登录状态?以前的版本很容易编辑,但这个版本有多个配置文件分布在 Ubuntu 的多个文件夹中。我希望在我的 VirtualBox 中拥有它,所以这里的安全性不是问题。
查看完整描述

1 回答

?
饮歌长啸

TA贡献1951条经验 获得超3个赞

如果您以同一用户身份登录并且不需要拥有多个用户帐户,那么更改为“配置”身份验证类型可能最适合您。

auth_type 配置

听起来您使用的是 Ubuntu 打包版本(或 phpMyAdmin PPA),在这种情况下,主要配置文件是/etc/phpmyadmin/config.inc.php. 其他文件包括在安装时自动设置的 blowfish 密钥之类的东西,通常不需要手动管理。您可以编辑该文件并查找类似

$cfg['Servers'][$i]['auth_type'] = 'cookie';

并将其更改为

$cfg['Servers'][$i]['auth_type'] = 'config';

如果该行不存在,只需添加配置行(默认为 cookie),因此它可能不会被 Ubuntu 设置。

您还需要在配置中添加用户名和密码作为硬编码值:

$cfg['Servers'][$i]['user'] = 'root';
$cfg['Servers'][$i]['password'] = 'yourPassword';

当然,如果您有 root 以外的用户,您可以在那里使用该用户名,并在适当的位置替换您的密码。

延长 cookie 有效期

如果这对您没有吸引力,您将不得不增加 cookie 会话过期前的时间。因为 PHP 会进行一些垃圾收集并删除旧会话,所以您必须告诉 phpMyAdmin 和 PHP 允许额外的时间。phpMyAdmin 设置称为LoginCookieValidty,PHP 设置为session.gc_maxlifetime

/etc/phpmyadmin/config.inc.php中,您必须添加另一行。我不知道这是否有上限(这里的评论相互矛盾地建议 65535 或更高的东西,因为这个问题显示的值为 200000)。例如,您可以尝试将其设置为 5 年,然后看看会发生什么(或一些更低、更理智的值):

$cfg['LoginCookieValidity'] = 157680000;

您还必须编辑您的 PHP 配置文件(如果您的 Ubuntu 安装与我的 Debian 安装类似,那么/etc/php/7.4/apache2/php.ini如果您不使用 Apache 或使用不同的 PHP 版本,它可能会进行调整)。我的已经默认了

session.gc_maxlifetime = 1440

所以你可以把它改成

session.gc_maxlifetime = 157680000

请注意,这两个值的上限可能取决于您的系统架构和一些我无法在任何地方找到记录的 PHP 限制,因此可能需要进行一些实验才能找到正确工作的高值。


查看完整回答
反对 回复 2022-12-30
  • 1 回答
  • 0 关注
  • 73 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信