【问题标题】:Opening ZF3 skeleton-application shows only source code but not the web page打开 ZF3 骨架应用程序只显示源代码而不显示网页
【发布时间】:2017-05-22 17:39:22
【问题描述】:

我用我的 Mac 设置了一台新的开发机器。 现在我安装了 zend 框架骨架应用程序。

当我打开网址时,它会在我的浏览器中显示 index.php 的源代码,而不是网站。

进入 /etc/apache2/httpd-vhosts.conf 我添加了这个:

<VirtualHost *:80>
    ServerName test.dev
    ServerAdmin info@abc.de
    DocumentRoot "/Users/myname/Projekte/web/test/public/"
    SetEnv APPLICATION_ENV "development"

    <Directory "/Users/myname/Projekte/web/test/public/" >
        DirectoryIndex index.php
        AllowOverride All
        Require all granted
    </Directory>

ErrorLog "/private/var/log/apache2/test.dev-error_log"
CustomLog "/private/var/log/apache2/test.dev-access_log" common

我能做些什么来解决这个问题? 我的公共目录需要 .htaccess 吗?

感谢您的帮助。

【问题讨论】:

  • 我已经安装了 Apache/2.4.23 (Unix)
  • 对我来说似乎是 apache 问题,而不是 ZF2/3 问题。你是怎么安装apache的?您如何检查 mod_php 是否已安装或您的 PHP-FPM 是否已启动并运行?
  • 谢谢,你说得对。 LoadModule php5_module libexec/apache2/libphp5.so 现在可以正常工作了。

标签: zend-framework3 skeleton-code


【解决方案1】:

只是为了写一个正确的答案,因为问题已经在 cmets 中解决了。

所以问题在于 http 请求将源代码作为响应返回。显然,这不是 Zend Framework 相关的问题,而是服务器配置问题。

为了正确诊断问题,可以使用最简单的 php 代码并直接尝试访问脚本,从而消除与框架相关的问题。例如,&lt;?php phpinfo(); 是一个很好的测试。

Apache 有两种方法可以使 php 被解释:php-fpm 和 mod_php。至少必须配置其中之一,以便 Apache 将文件传递给解释器。

在这种特定情况下,模块已安装在机器上但未加载到配置文件中,这是使用 apache 配置文件中的以下行完成的:

LoadModule php5_module libexec/apache2/libphp5.so

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-01-11
    • 2013-09-17
    • 2013-08-06
    • 2011-03-14
    • 2019-06-24
    • 1970-01-01
    • 1970-01-01
    • 2014-08-30
    相关资源
    最近更新 更多