PHP 未在安装的 phpMyAdmin 目录中执行

PHP 未在安装的 phpMyAdmin 目录中执行

我通过 yum 在 centos 上安装了 phpmyadmin,并且可以通过 访问它//ip/phpMyAdmin

但是,它显示的是源代码而不是解释后的 PHP 代码结果。

我通过添加另一个文件test.php(仅包含内容)再次进行了测试,""果然在这种情况下也显示了源代码。

我在这个服务器上安装了其他网站,php 运行良好。/home但是这些网站位于目录中,phpmyadmin 安装在/usr/share/phpMyAdmin

这可能是什么原因造成的?这肯定与短标签无关,因为我的 test.php 没有使用短标签。

请注意,我使用 webmin,这可能与它有关吗?Webmin/virtualmin 默认在 fcgi 模式下使用 php,我希望保持这种方式。

我已经添加了:

Options -Indexes +IncludesNOEXEC +SymLinksIfOwnerMatch +ExecCGI
AllowOverride All 
Options=ExecCGI,Includes,IncludesNOEXEC,Indexes,MultiViews,Sy$
AddType application/x-httpd-php .php
AddHandler fcgid-script .php
AddHandler fcgid-script .php5
FCGIWrapper /home/ubn/fcgi-bin/php5.fcgi .php
FCGIWrapper /home/ubn/fcgi-bin/php5.fcgi .php5

但现在出现内部服务器错误,错误日志中似乎没有任何条目

答案1

Virtualmin 默认设置基于名称的虚拟主机系统,应用程序在 suxec 下运行,通常在 mod_fcgid 下运行,正如您所指出的。这与 Apache 为单个非基于名称的站点提供服务不兼容(在几个方面)(尽管您可以将 /var/www 中的站点设为默认站点,并为其启用 mod_php,但出于多种原因(包括安全性),我不建议这样做)。

Virtualmin(GPL 和专业版)包含一个用于 phpmyadmin 的脚本安装程序。使用它可以将 phpmyadmin 安装到由 Virtualmin 管理的虚拟主机中,而不必尝试使用 OS 包,这样它就可以正常工作。您还可以让 Virtualmin 通知您使用安装脚本安装的脚本的更新,并且它会像 CentOS RPM 一样保持更新,因此您不会在以这种方式安装时牺牲升级的便利性。

如果您确实想要使用 RPM 版本的 phpmyadmin,请告诉我,我会看看是否可以找到一些文档(我们以前没有在 Virtualmin GPL 中包含 phpmyadmin,因此我们提供了一些有关如何使其工作的文档,但是由于几年前将一些安装脚本添加到 GPL,所以很少谈论这个话题)。

相关内容