Apache 中的 PHPMyAdmin 500 内部服务器错误

时间:2021-01-30 07:45:20

标签: mysql apache ubuntu phpmyadmin

版本:

  • 操作系统 lsb_release -a:Ubuntu 18.04.5 LTS
  • PHP php -v:8.0.1
  • Apache apache2 -v:2.4.29 (Ubuntu)
  • MySQL mysql -v:10.1.47-MariaDB

问题:

我正在尝试使用以下 article 安装 LAMP Stack。但是,我在从浏览器访问 HTTP 500 Error 时得到了 phpmyadmin

因此,我尝试使用 ln 命令创建符号链接,但失败了

<块引用>

ln: 未能创建符号链接 '/etc/apache2/conf-available/phpmyadmin.conf': 文件存在

root@host:/etc/phpmyadmin# sudo ln -s /etc/phpmyadmin/apache.conf /etc/apache2/conf-available/phpmyadmin.conf
ln: failed to create symbolic link '/etc/apache2/conf-available/phpmyadmin.conf': File exists

尝试了 1 个:

然后,我通过强制 ln -sf 创建了符号链接。

  • sudo ln -sf /etc/phpmyadmin/apache.conf /etc/apache2/conf-available/phpmyadmin.conf

并运行以下命令

  • sudo a2enconf phpmyadmin.conf
  • sudo systemctl reload apache2.service
root@host:/etc/phpmyadmin# ls -l
-rw-r--r-- 1 root root     2110 Jul 10  2017 apache.conf
root@host:/etc/apache2/conf-available# ls -l
lrwxrwxrwx 1 root root   28 Jan 30 06:52 phpmyadmin.conf -> ../../phpmyadmin/apache.conf

尝试了 2 个:

如果我错误地没有选择 apache2 使用

,我什至重新配置了 phpmyadmin
  • sudo dpkg-reconfigure -plow phpmyadmin

/etc/apache2/conf-available/phpmyadmin.conf

# phpMyAdmin default Apache configuration

Alias /phpmyadmin /usr/share/phpmyadmin

<Directory /usr/share/phpmyadmin>
    Options SymLinksIfOwnerMatch
    DirectoryIndex index.php

    <IfModule mod_php5.c>
        <IfModule mod_mime.c>
            AddType application/x-httpd-php .php
        </IfModule>
        <FilesMatch ".+\.php$">
            SetHandler application/x-httpd-php
        </FilesMatch>

        php_value include_path .
        php_admin_value upload_tmp_dir /var/lib/phpmyadmin/tmp
        php_admin_value open_basedir /usr/share/phpmyadmin/:/etc/phpmyadmin/:/var/lib/phpmyadmin/:/usr/share/php/php-gettext/:/usr/share/php/php-php-gettext/:/usr/share/javascript/:/usr/share/php/tcpdf/:/usr/share/doc/phpmyadmin/:/usr/share/php/phpseclib/
        php_admin_value mbstring.func_overload 0
    </IfModule>
    <IfModule mod_php.c>
        <IfModule mod_mime.c>
            AddType application/x-httpd-php .php
        </IfModule>
        <FilesMatch ".+\.php$">
            SetHandler application/x-httpd-php
        </FilesMatch>

        php_value include_path .
        php_admin_value upload_tmp_dir /var/lib/phpmyadmin/tmp
        php_admin_value open_basedir /usr/share/phpmyadmin/:/etc/phpmyadmin/:/var/lib/phpmyadmin/:/usr/share/php/php-gettext/:/usr/share/php/php-php-gettext/:/usr/share/javascript/:/usr/share/php/tcpdf/:/usr/share/doc/phpmyadmin/:/usr/share/php/phpseclib/
        php_admin_value mbstring.func_overload 0
    </IfModule>

</Directory>

# Authorize for setup
<Directory /usr/share/phpmyadmin/setup>
    <IfModule mod_authz_core.c>
        <IfModule mod_authn_file.c>
            AuthType Basic
            AuthName "phpMyAdmin Setup"
            AuthUserFile /etc/phpmyadmin/htpasswd.setup
        </IfModule>
        Require valid-user
    </IfModule>
</Directory>

# Disallow web access to directories that don't need it
<Directory /usr/share/phpmyadmin/templates>
    Require all denied
</Directory>
<Directory /usr/share/phpmyadmin/libraries>
    Require all denied
</Directory>
<Directory /usr/share/phpmyadmin/setup/lib>
    Require all denied
</Directory>

但仍无法通过浏览器访问 phpmyadmin

1 个答案:

答案 0 :(得分:2)

有一点可能是因为 PHPMyAdmin 版本和 PHP 版本不能很好地协同工作。

您可以看到此答案 https://stackoverflow.com/a/65969268/12154890。我不想多次发布相同的内容。

相关问题