如果您在 DOCKER 容器中使用 phpMyAdmin:
- 转到您的
TERMINAL 并列出您的 docker 容器,以便找出 phpmyadmin 之一:
$ docker ps
# EXAMPLE OF OUTPUT:
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
93dfa1f49775 php:7.4.1-fpm "docker-php-entrypoi…" 2 weeks ago Up 2 weeks 9000/tcp docker_localhost_app
36299ca6ce83 nginx:alpine "/docker-entrypoint.…" 2 weeks ago Up 2 weeks 0.0.0.0:80->80/tcp, 0.0.0.0:443->443/tcp docker_localhost_nginx
c1d8e6ffd28c phpmyadmin/phpmyadmin "/docker-entrypoint.…" 2 weeks ago Up 2 weeks 0.0.0.0:8080->80/tcp docker_localhost_myadmin
d75778f88cc6 mysql:5.6 "docker-entrypoint.s…" 2 weeks ago Up 2 weeks 0.0.0.0:3306->3306/tcp docker_localhost_db
- 在所选容器中执行
bash:
$ docker exec -it docker_localhost_myadmin bash
root@c1d8e6ffd28c:/var/www/html#
在这种情况下,docker_localhost_myadmin 是 my 容器的名称。
- 安装
vim editor 以更改具有超时变量的文件。执行:
$ apt update
$ apt upgrade
$ apt install vim
- 编辑文件
config.default.php:
$ vim /var/www/html/libraries/config.default.php
- 找出变量
$cfg['LoginCookieValidity'] 并将其从1440 更改为28800(8 小时):
要找出vim 上的变量,请按/ 并输入LoginCookieValidity
之前:
$cfg['LoginCookieValidity'] = 1440
之后:
$cfg['LoginCookieValidity'] = 28800;
注意 1:DO NOT 设置 0(零),因为它会使您的 phpMyAdmin 立即注销。
注意 2:您可能会在 phpMyAdmin 上看到如下消息:
您的 PHP 参数 session.gc_maxlifetime 低于 phpMyAdmin 中配置的 cookie 有效期,因此,您的登录可能比 phpMyAdmin 中配置的过期时间早。
在这种情况下,请将 docker-compose.yml 上的环境变量 session.gc_maxlifetime 更改为 - session.gc_maxlifetime=28800 或更大。
- 重启你的容器:
$ /etc/init.d/apache2 reload
- 注销并登录您的 phpMyAdmin 以查看结果。