我在使用 PhpMyadmin 时遇到问题:它返回代码而不是登录屏幕,或者只返回空白页面。
尝试了以下操作(在自己的服务器上运行 Debian 11 - Bullseye。)
PHP:已安装版本 7.4,7.4 和 8.1 均可用) MYSQL:版本 8.0.29,适用于 x86_64 上的 Linux(MySQL 社区服务器 - GPL) Apache2 版本 2.4.53 80和443端口开放
我不确定我需要什么插件或模块。我已经安装了几乎所有我能想到的东西,然后我得到了一个白色的空白页,我知道我可能遗漏了一些东西,但不确定。
有人可以给我一个列表,列出我需要安装什么才能使其正常工作吗?我已经从 Debian 8.3 升级到 Debian 11,但我不确定还需要什么。
任何帮助将不胜感激 - 这不可能这么难:(
谢谢, 布莱恩
使用以下命令安装所需的一切。我遇到了同样的问题,我用以下代码修复了它:
apt -y install wget php php-cgi php-mysqli php-pear php-mbstring libapache2-mod-php php-common php-phpseclib php-mysql
您的 php 模块似乎在 apache2 Web 服务器中丢失/无法工作。尝试按照以下建议执行步骤 1-4:
https://stackoverflow.com/a/68241533
apt-get install libapache2-mod-phpX.X
sudo a2enmod phpx.x
sudo a2dismod xxx
sudo service apache2 reload
完成后,尝试再次重新加载 phpmyadmin 页面。
我刚刚在 Ubuntu 22.04 上遇到了这个问题
安装“libapache2-mod-php”并将 /etc/phpmyadmin/config.inc.php 中的“localhost”更改为“172.0.0.1”为我解决了这个问题。
在 github 上here找到答案。
TLDR;启用 PHP 的一个版本,禁用其余版本。
您安装了多个 PHP 版本,因此您需要做的是启用其中一个并禁用其余所有版本。然后,使用您选择的 PHP 版本,安装必要的 php 软件包特定于您的 PHP 版本(例如 PHP 8.X
)并重新启动/重新加载服务器。
ls /etc/apache2/mods-available
检查您的Apache的可用模块
和使用
ls /etc/apache2/modes-enabled
检查启用的模块并比较内容。检查这两个命令的屏幕截图并记下圆圈。我已安装/可用 PHP 8.0 和 8.2,但仅启用了 8.2。
Include /etc/phpmyadmin/apache.conf
添加到您的
/etc/apache2/apache2.conf
文件中。
sudo apt install php8.X-cgi php8.X-mysql php8.X-pear php8.X-mbstring php8.X-common libapache2-mod-php8.X
sudo a2enmod php8.X
sudo a2dismod
禁用其余 PHP 版本,例如
sudo a2dismod php7.1
sudo a2dismod php5.6
sudo systemctl restart apache2
和/或
sudo systemctl reload apache2
奖金 如果您想使用多个 php 版本,请从 Ondrej Sury 的这个 PPA(对于 Ubuntu 用户)安装它们,对于 Debian 用户,请检查 这个 DPA。 欢迎评论和反馈。