打开 ZF3 骨架应用程序只显示源代码而不显示网页
Posted
技术标签:
【中文标题】打开 ZF3 骨架应用程序只显示源代码而不显示网页【英文标题】:Opening ZF3 skeleton-application shows only source code but not the web page 【发布时间】: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 现在可以正常工作了。 【参考方案1】:只是为了写一个正确的答案,因为问题已经在 cmets 中解决了。
所以问题在于 http 请求将源代码作为响应返回。显然,这不是 Zend Framework 相关的问题,而是服务器配置问题。
为了正确诊断问题,可以使用最简单的 php 代码并直接尝试访问脚本,从而消除与框架相关的问题。例如,<?php phpinfo();
是一个很好的测试。
Apache 有两种方法可以使 php 被解释:php-fpm 和 mod_php。至少必须配置其中之一,以便 Apache 将文件传递给解释器。
在这种特定情况下,模块已安装在机器上但未加载到配置文件中,这是使用 apache 配置文件中的以下行完成的:
LoadModule php5_module libexec/apache2/libphp5.so
【讨论】:
以上是关于打开 ZF3 骨架应用程序只显示源代码而不显示网页的主要内容,如果未能解决你的问题,请参考以下文章
打开豆瓣网的时候,网页显示不正常,文字蓝字白底的。请问是啥原因。有图有真相。