升级到 Yosemite 后,我的 PHP 停止工作。经过快速搜索,我发现本指南它在我的工作电脑上运行良好。
当我在家用 Mac 上尝试同样操作时,没有成功。1) 在我家用的 Mac 上熵PHP 最初安装,所以我按照他们的指南卸载并安装较新版本,但没有用。
我也尝试过使用现成的标准 PHP,但也没有用。
澄清一下:我已清理安装 Yosemite,然后导入了我的用户和设置。我已取消注释此行httpd.conf
LoadModule userdir_module libexec/apache2/mod_userdir.so
以及这两个:
LoadModule authz_core_module libexec/apache2/mod_authz_core.so
LoadModule authz_host_module libexec/apache2/mod_authz_host.so
我不想使用用户的站点(即:localhost/~user/myphpapp),而宁愿使用(localhost/myphpapp),但我确实按照说明设置了用户的站点,但这也不起作用。(然后我又恢复了)
澄清一下它不起作用的含义:当我转到localhost/php/info.php
(其中 info.php 包含 phpinfo())时,我可以看到字符串<?php phpinfo(); ?>
,但它不会执行。当我浏览我的应用程序时,文件是可见的,这说明 apache 运行正常,只是 PHP 没有执行文件。
另一点是 php 本身已经安装。php --version
在终端上执行会得到以下内容:
PHP 5.6.2 (cli) (built: Oct 21 2014 21:47:13)
Copyright (c) 1997-2014 The PHP Group
Zend Engine v2.6.0, Copyright (c) 1998-2014 Zend Technologies
with Zend OPcache v7.0.4-dev, Copyright (c) 1999-2014, by Zend Technologies
with Xdebug v2.2.5, Copyright (c) 2002-2014, by Derick Rethans
和which php
/usr/local/php5/bin/php
我的httpd.conf:
LoadModule php5_module /usr/local/php5/libphp5.so
这是安装脚本后 entropy 给我的。我可以在上面的目录中看到 libphp5.so(它实际上是一个符号链接,但我想这没什么问题)
当我执行时,sudo apachectl -t
我得到了一个Syntax OK
,是的,我在最后一轮更改后重新启动了 apache。甚至重新启动了计算机以确保万无一失。
最后,当我php app/console server:run
从 symfony 应用程序执行时,它确实按预期工作,PHP 肯定可以正常运行。
我唯一的猜测是我的httpd.conf
不知何故坏了但我不知道如何修复。
有人可以解释一下这个问题吗?
非常感谢