php - Apache 在 Mavericks 上运行错误版本的 PHP

标签 php apache

我正在尝试将我的 PHP 版本从 5.4 更新到 5.5,但 Apache 不配合。我在其他地方搜索过这个,似乎解决方案应该是将以下行添加到 httpd.conf:

LoadModule php5_module    /usr/local/opt/php55/libexec/apache2/libphp5.so

我做了,但还是不行。从命令行看来一切都是正确的:

Andres-MacBook-Air:~ fratelli$ which php
/usr/local/opt/php55/bin/php
Andres-MacBook-Air:~ fratelli$ php -v
PHP 5.5.16 (cli) (built: Sep 12 2014 04:34:10) 
Copyright (c) 1997-2014 The PHP Group
Zend Engine v2.5.0, Copyright (c) 1998-2014 Zend Technologies
Andres-MacBook-Air:~ fratelli$ 

正如我所说,我将 LoadModule 指令添加到位于 /private//etc/apache2https.conf 文件中,然后我重新启动 apache:

sudo apachectl restart

在我的页面中,我调用了 phpinfo(),它告诉我我正在使用 PHP 版本 5.4.24。有人知道如何解决这个问题吗?

最好的。

编辑:这有帮助吗?

Andres-MacBook-Air:apache2 fratelli$ apachectl -M | grep php
[Sat Sep 13 03:11:50 2014] [warn] module php5_module is already loaded, skipping
httpd: Could not reliably determine the server's fully qualified domain name, using Andres-MacBook-Air.local for ServerName
Syntax OK
 php5_module (shared)

编辑:我不知道 Apache 从哪里加载 PHP。我刚刚编辑了我的 /private/etc/httpd.conf 文件,删除了所有引用 PHP 的 LoadModule 指令,它仍然有效(虽然是 5.4)。我很确定这是错误的文件。

编辑:它似乎是错误的文件。 /etc/apache2 中还有一个。会试一试。

编辑:现在我很困惑:

Andres-MacBook-Air:apache2 fratelli$ ls -l /private/etc/apache2/httpd.conf
-rwxrwxrwx  1 root  wheel  18196 Sep 13 03:29 /private/etc/apache2/httpd.conf
Andres-MacBook-Air:apache2 fratelli$ ls -l /etc/apache2/httpd.conf
-rwxrwxrwx  1 root  wheel  18196 Sep 13 03:29 /etc/apache2/httpd.conf

编辑一个也会改变另一个,但似乎都不是符号链接(symbolic link)..

最佳答案

使用本网站。 http://php-osx.liip.ch/ 您可以更新到 5.5 或 5.6 我已经使用他们的一行 ssh 命令更新了几台 Mac。这应该会修复您 Mac 上的所有问题,并让您使用现在稳定的 5.5 或 5.6。

curl -s http://php-osx.liip.ch/install.sh | bash -s 5.6

curl -s http://php-osx.liip.ch/install.sh | bash -s 5.5

我的 Apache 在这里有一个文件。 /etc/apache2/other/+php-osx.conf 使用以下路径。

LoadModule php5_module  /usr/local/php5/libphp5.so

在命令行中

which php

应该是

/usr/local/php5/bin/php

在我的 httpd.conf 中,libphp5.so 实际上被注释掉了,没有对 PHP 的引用。

#LoadModule php5_module        libexec/apache2/libphp5.so

同时确保您“重新启动 APACHE”以查看发生的任何更改。如果你不这样做,它就不会重新加载 PHP5.5 库,你也不会看到任何变化。

关于php - Apache 在 Mavericks 上运行错误版本的 PHP,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25819048/

相关文章:

php - 当我添加 root 密码时,XAMPP 未将 "unsecure"更新为 "secure"

增加系统规范时 Apache 崩溃

apache - 从 Tomcat 切换到 Glassfish

php - 您如何使用 PHP 与正在运行的 C++ 进程进行交互?

php - Netbeans 突然不在断点处停止

php - 如果一个类不存在,你应该抛出哪个 PHP SPL 异常

php执行多个命令,apache重启

java - 使用 Apache POI 替换 powerpoint 中的所有文本

php - 通过 html 插入

php - Codeigniter REST API 提供未知方法?