Apache 2.4 虚拟主机空白屏幕

Apache 2.4 虚拟主机空白屏幕

我最近将我正在开发的 PHP 项目从运行 Apache 2.2.11 的物理机移到了运行 Apache 2.4.9 的虚拟机上。我为该项目设置了一个 VirtualHost,与我在 2.2 机上所做的类似。我知道 2.2 和 2.4 之间存在差异,我很确定我已经在 2.4 Virtualhost 配置中解决了这个问题,但我似乎遗漏了一些东西。

当我将浏览器指向我的项目 VirtualHost 的虚拟机的 URL 时(http://project.dev.lan(在本例中为 ),我得到的只是空白(白色)屏幕。我为默认的文档根目录设置了另一个 VirtualHost,它似乎运行良好;页面按预期显示。

有人能帮我指明正确的方向吗?

apachectl -S 返回:

VirtualHost configuration:
*:80                   is a NameVirtualHost
         default server localhost (/usr/local/etc/apache2/extra/httpd-vhosts.conf:40)
         port 80 namevhost localhost (/usr/local/etc/apache2/extra/httpd-vhosts.conf:40)
                 alias 192.168.0.130
         port 80 namevhost project.dev.lan (/usr/local/etc/apache2/extra/httpd-vhosts.conf:46)
                 alias project.dev.vm
ServerRoot: "/usr/local/apache2"
Main DocumentRoot: "/data/www/apache2:80"
Main ErrorLog: "/var/log/apache2/error_log"
Mutex rewrite-map: using_defaults
Mutex proxy: using_defaults
Mutex default: dir="/usr/local/apache2/logs/" mechanism=default 
Mutex mpm-accept: using_defaults
Mutex proxy-balancer-shm: using_defaults
PidFile: "/usr/local/apache2/logs/httpd.pid"
Define: DUMP_VHOSTS
Define: DUMP_RUN_CFG
User: name="apache2" id=2000
Group: name="www" id=103

我的 VirtualHost 文件包含:

<VirtualHost *:80>
        ServerName      localhost
        ServerAlias     192.168.0.130
        DocumentRoot    /data/www/apache2:80
</VirtualHost>

<VirtualHost *:80>
        ServerName      project.dev.lan
        ServerAlias     project.dev.vm
        DocumentRoot    /data/www/project/SRC
        DirectoryIndex  index.php index.html
        ServerAdmin     [email protected]
        ErrorLog        /var/log/apache2/project.dev.lan-error_log
        CustomLog       /var/log/apache2/project.dev.lan-access_log common

        <Directory "/data/www/project/SRC">
                Options         +Indexes +Multiviews +FollowSymLinks
                AllowOverride   All
                Require         all granted
        </Directory>
</VirtualHost>

如果有必要,我可以发布我的 httpd.conf,尽管除了确保我的 extra/httpd-vhosts.conf 文件已包含在内之外,我没有对默认值进行太多更改。

有人能解释一下我所忽略的事情吗?

谢谢

答案1

如果在加载 php 页面时出现空白页,请设置display_errors = On/path-to-your/php.ini并再次启动 apache(例如sudo service apache24 onerestart:)。这样,页面上将显示缺少的扩展名,而不是空白页。很可能是它被注释掉或丢失了/path-to-your/php/extensions.ini (在 FreeBSD 论坛上阅读,来自 soulreaver1 的提示)

相关内容