升级PHP至8.0.10-2后phpMyAdmin登录陷入循环问题求助
问题根因
你遇到的登录循环核心原因是PHP升级后配置异常导致POST请求被截断:日志中POST Content-Length of 141 bytes exceeds the limit of 4 bytes说明当前PHP允许的POST请求最大长度仅为4字节,phpMyAdmin登录提交的表单数据远大于这个值,参数无法正常传递,就会反复跳转回登录页形成循环。
排查&解决步骤
- 第一步:核实php.ini核心配置
- 执行
php --ini命令找到当前生效的php.ini文件路径,也可以在web可访问目录新建临时phpinfo页面查看加载的配置文件路径 - 编辑php.ini文件,找到
post_max_size配置项,检查是否误配置为无单位的数值:PHP配置中不带单位的数值默认以字节为单位,如果你写成post_max_size = 4就会限制为4字节,将其修改为合理值,例如post_max_size = 8M - 同步检查同配置文件中的
memory_limit、upload_max_filesize参数,确保没有其他异常配置
- 执行
- 第二步:检查php-fpm池配置覆盖
打开/etc/php-fpm.d/www.conf文件,查找是否存在php_admin_value[post_max_size]这类覆盖配置,部分部署会在php-fpm池配置中单独设置参数,优先级高于全局php.ini,若存在异常同样修改为合理值 - 第三步:重启服务生效配置
依次执行命令重启服务:systemctl restart php-fpm systemctl restart httpd - 第四步:验证修复效果
清理浏览器缓存和phpMyAdmin相关Cookie后重新尝试登录,查看/var/log/php-fpm/www-error.log中是否还存在POST长度超限的报错 - 可选补充排查
如果修改POST长度后仍有问题,可检查session.save_path对应目录的权限是否属于apache/php-fpm运行用户,避免会话无法写入导致登录状态不生效
内容的提问来源于stack exchange,提问作者Greg Guldenschuh
相关产品推荐
相关产品推荐

