phpMyAdmin在访问config.inc.php和blowfish_secret.inc.php时出错



我在以下配置上运行phpMyAdmin 4.6.6deb5:

  • Ubuntu服务器18.04.3
  • nginx/1.17.9
  • 7.2.24-0管0.18.04.3

phpMyAdmin似乎可以工作,但有一条红色错误消息说明了一些关于blowfish秘密的信息。不知怎么的,没有办法摆脱它。错误日志包含以下条目:

2020/03/22 21:46:30 [error] 26664#26664: *53 FastCGI sent in stderr: "PHP message: phpmyadmin: Failed to load /var/lib/phpmyadmin/blowfish_secret.inc.php Check group www-data has read access and open_basedir restrictions.
PHP message: phpmyadmin: Failed to load /var/lib/phpmyadmin/config.inc.php Check group www-data has read access and open_basedir restrictions" while reading response header from upstream, client: 87.147.18.48, server: ***, request: "GET /phpmyadmin/js/get_image.js.php?theme=pmahomme&v=4.6.6deb5 HTTP/2.0", upstream: "fastcgi://unix:/run/php/php7.2-fpm.sock:", host: "***

文件夹和文件都分配给了www数据。我还分配了以下权限:

# chmod 755 /var/lib/phpmyadmin
# chmod 664 /var/lib/phpmyadmin/blowfish_secret.inc.php 
# chmod 664 /var/lib/phpmyadmin/config.inc.php 

不起作用。。。

我觉得奇怪的是,config.inc.php是空的,blowfish_seceret.inc.php看起来是这样的:

<?php
$cfg['blowfish_secret'] = 'j(<purKyJl>5D]yzlPoKFLNfH9es6.-T';

两个文件好像都坏了。有人能告诉我在哪里能找到合适的文件吗?我知道在不同的文件夹中有几个config.inc.php文件,其中一些文件包括blowfish_secret行,但我不知道其中哪一个文件适合复制到/var/lib/phpmyadmin。

我在stackoverflow和其他论坛上搜索时发现了类似的问题,但没有一个建议的解决方案对我有效

提前感谢

谨致问候,Boris

您的设置有一些奇怪的地方,其中之一是包管理器通常会将配置文件放在etc/phpmyadmin中,而不是/var/lib/phpmyadmin中。此外,4.6.6版本相当旧。

如果您想继续对现有安装进行故障排除,我建议您开始查看是否存在任何open_basedir限制。查看phpinfo((的输出。

在Web服务器根目录中创建一个新的文本文件。你可以随意称呼它,比如phpinfo.php。文本文件应包含

<?php
phpinfo();

将其加载到浏览器中,并在输出中搜索open_basedir。这将显示您已配置的内容,在顶部附近还有一个部分将告诉您正在读取哪些配置文件,因此如果存在错误配置,您可以开始猜测在哪里进行修复。

正在升级

如果你的PHP和MySQL版本支持它(PHP 7.2也支持,所以你可能还可以(,我建议从phpMyAdmin PPA安装最新版本。您应该首先在本地系统中删除现有phpMyAdmin包,包括/var/lib/phpmyadmin/etc/phpmyadmin文件夹(关于首先备份的常见免责声明适用,尽管这些都不应该是破坏性的(。如果您已经进行了要保留的自定义,则可能希望保存配置文件config.inc.php

这些应该是兼容和更新的。

易于自动安装

也许你只需要两行就可以添加PPA,然后你就可以用你最喜欢的包管理工具搜索"phpmyadmin",比如智能:

sudo add-apt-repository ppa:phpmyadmin/ppa
sudo apt-get update

手动安装

如果你的系统没有apt-repository或出现其他问题,那里有手动说明,基本上是这样的:

你可能需要添加PPA作为一个合适的来源,这可以通过来实现

sudo echo "deb http://ppa.launchpad.net/phpmyadmin/ppa/ubuntu bionic main" > /etc/apt/sources.list.d/phpmyadmin.list

尝试更新apt:apt-get update。您可能会遇到密钥错误,我们预计这是因为您还没有正确的密钥来验证下载。当您收到错误时,请记下密钥ID。

检索密钥:apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 2EA3055293CB3F45(目前,这是我需要的密钥,但可能会更改,所以最好从错误消息中复制并粘贴它,并在此命令中替换它(。

最后,您可以使用apt-get update再次更新包列表,然后使用您最喜欢的apt风格的工具安装phpmyadmin包。

最新更新