虚拟主机未解析 PHP

Virtual Host not parsing PHP

好吧,我已经花了几个小时搜索非常相似的问题,但我似乎仍然没有找到答案:

我已经在 httpd-vhosts.conf

中设置了一个虚拟主机,如下所示
Listen 80

<VirtualHost *:80>
    ServerName test.dev
    ServerAlias test.dev
    DocumentRoot "/Users/OrangeSoda/OneDrive/Projects/Test/Website"
    ErrorLog "/private/var/log/apache2/test.dev-error_log"
    CustomLog "/private/var/log/apache2/test.dev-access_log" common

    <Directory "/Users/OrangeSoda/OneDrive/Projects/Test/Website">
         Options all
         AllowOverride all
         Require all granted
    </Directory>
 </VirtualHost>

在我的 http.conf 中,我有 Include /private/etc/apache2/extra/httpd-vhosts.conf 以及 LoadModule vhost_alias_module libexec/apache2/mod_vhost_alias.so 未注释。

当我去测试时。dev/index.php 刚好有 <?php echo "PHP TEST"; ?>,我看到文件输出的内容是一个字符串。

似乎 PHP 未启用,因此未被识别。

如果我转到本地主机,我会看到 "It Works!" 页面,所以我知道 php 正在工作,只是出于某种原因不在我的虚拟主机上。

有人建议放置 php_admin_flag engine on 但这只会让整个页面崩溃。

有人知道为什么这里没有启用 php 吗?

你检查过80端口有没有打开?如果您包括详细的日志,它可能会更有帮助。

您走在正确的轨道上,但您需要实际将 php 加载到虚拟主机上。在 <Directory> 条目上,添加以下行:

<IfModule sapi_apache2.c>
    php_admin_flag engine on
</IfModule>
<IfModule mod_php5.c>
    php_admin_flag engine on
</IfModule>

我从 here 得到了解决方案。

看来mod-php可能没有安装。 OS 你在看什么?

在 Ubuntu/debian:

sudo apt-get install php5

在红帽上:

sudo yum install php

解决方案是,虽然启用了 php,但出于某种原因,httpd.conf 中的默认设置不是将 .php 文件读取为 .php。

虽然我不太确定为什么这不是默认设置,但我将以下内容添加到我的 httpd.conf 现在它工作正常:

AddType application/x-httpd-php .php