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

PHPMyAdmin 500 Internal Server Error in Apache

版本:


问题:

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

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

ln: failed to create symbolic link '/etc/apache2/conf-available/phpmyadmin.conf': File exists

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.

创建了符号链接

和运行下面的命令

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 次:

我什至重新配置了 phpmyadmin 如果我错误地没有 select apache2 使用


/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

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

你可以看到这个答案。我不想 post 多次重复同样的事情。