phpMyAdmin不工作后新鲜安装与apache2



当我尝试访问phpmyadmin页面时,我收到以下错误:

<?php
declare(strict_types=1);
use PhpMyAdminRouting;
if (! defined('ROOT_PATH')) {
// phpcs:disable PSR1.Files.SideEffects
define('ROOT_PATH', __DIR__ . DIRECTORY_SEPARATOR);
// phpcs:enable
}
global $route, $containerBuilder;
require_once ROOT_PATH . 'libraries/common.inc.php';
$dispatcher = Routing::getDispatcher();
Routing::callControllerForRoute($route, $dispatcher, $containerBuilder);

在互联网上找不到解决这个问题的方法,任何帮助都将不胜感激。

我也面临同样的问题,但通过下面的命令

解决了它
sudo apt install libapache2-mod-php8.1
sudo systemctl restart apache2

你可以尝试删除我的php与apt-get --purge remove php-common和下载它与apt-get install php7.4 php7.4-mysqli php7.4-xml跟着systemctl reload apache2重新启动apache。

如果上面的不起作用,我建议你重新下载phpmyadmin

步骤1 -安装Apache和PHP

$ sudo apt install apache2 wget unzip 
$ sudo apt install php php-zip php-json php-mbstring php-mysql 

安装完成后,启用并启动Apache web服务器。

$ sudo systemctl enable apache2 
$ sudo systemctl start apache2

步骤2 -在Ubuntu 22.04上安装phpMyAdmin

$ wget https://files.phpmyadmin.net/phpMyAdmin/5.2.0/phpMyAdmin-5.2.0-all-languages.zip 
$ unzip phpMyAdmin-5.2.0-all-languages.zip 
$ sudo mv phpMyAdmin-5.2.0-all-languages /usr/share/phpmyadmin 

下一步,创建tmp目录并设置适当的权限。这是使它正常工作的必要步骤。

$ sudo mkdir /usr/share/phpmyadmin/tmp 
$ sudo chown -R www-data:www-data /usr/share/phpmyadmin 
$ sudo chmod 777 /usr/share/phpmyadmin/tmp 

步骤3 -配置phpMyAdmin

现在,您需要配置web服务器,以便在网络上为phpMyAdmin提供服务。为phpMyAdmin创建一个Apache配置文件,并在文本编辑器中编辑它:

$ sudo nano /etc/apache2/conf-available/phpmyadmin.conf

添加以下内容到文件###

Alias /phpmyadmin /usr/share/phpmyadmin
Alias /phpMyAdmin /usr/share/phpmyadmin

<Directory /usr/share/phpmyadmin/>
AddDefaultCharset UTF-8
<IfModule mod_authz_core.c>
<RequireAny>
Require all granted
</RequireAny>
</IfModule>
</Directory>

<Directory /usr/share/phpmyadmin/setup/>
<IfModule mod_authz_core.c>
<RequireAny>
Require all granted
</RequireAny>
</IfModule>
</Directory>

完成所有更改后,请确保启动Apache服务以重新加载所有设置。

$ sudo a2enconf phpmyadmin 
$ sudo systemctl restart apache2

步骤4—调整防火墙

启用防火墙的系统需要允许来自防火墙的HTTP服务。运行以下命令为防火墙中的web服务器打开一个端口。
$ sudo firewall-cmd --permanent --add-service=http 
$ sudo firewall-cmd --reload 

如果你没有安装防火墙,运行:

$ sudo apt-get firewall

如果您在浏览器中看到php代码,这意味着没有使用php解释器。这意味着问题不在于PhpMyAdmin,而在于你的php安装。我很快谷歌了一下,但你(或其他人)可能会找到更好的教程。

当新的apache php和mysql/mariadb我建议安装wampserver或mamp。他们确实从你那里拿走了所有的配置工作。

试试这个

sudo a2enmod php8.1
sudo systemctl restart apache2
sudo a2enmod php8.2
sudo systemctl restart apache2

最新更新