如何在 Mountain Lion 上启用 php 5.4.x 版本

如何在 Mountain Lion 上启用 php 5.4.x 版本

我已经按照这些说明在我的 Mountain Lion 系统上安装了最新的 PHP 版本 (http://mac.tutsplus.com/tutorials/server/upgrading-the-native-php-installation-on-os-x-mountain-lion/)。我甚至将 /usr/local/bin 放在路径变量的首位,因此当我在命令行运行 php -v 时,我得到的是 php v5.4.x。问题是,当我运行一个简单的脚本(其中包含 phpinfo() 函数)时,页面告诉我,我正在运行 mac os mountain lion 预装的旧 5.3.x php 版本。我甚至尝试重新启动 apache,但问题仍然存在。对此有什么想法吗?谢谢。

答案1

您遵循的教程有点危险。它似乎告诉您用新的 X11 替换默认的 X11,这是一个非常糟糕且不必要的想法。

您在哪里更改了局部变量?如果您使用了 .profile 或 .bash_profile,它仅对您的用户有效。要影响所有用户,您需要更改 /etc/paths。但我认为这与 PATH 变量无关。


关于您的问题,这意味着 Apache 没有加载正确的 PHP 模块。(libphp5.so)

检查创建日期/usr/libexec/apache2/libphp5.so

如果它早于您的构建时间,那么它就不会被替换。

  1. 首先关闭 Apache(在设置中或sudo apachectl stop在控制台中运行)。

  2. 然后重命名/usr/libexec/apache2/libphp5.so-->sudo mv /usr/libexec/apache2/libphp5.so /usr/libexec/apache2/libphp5.so.bak

  3. 然后转到源目录并运行make install。(如果您删除了目录,makefile 或运行了,make clean则需要重新启动编译过程)

  4. 然后检查是否libphp5.so存在/usr/libexec/apache2/。如果不存在,则您的编译参数错误。如果存在,请转到步骤5。

  5. 将新版本重命名/usr/libexec/apache2/libphp5.so为 libphp5.4.8.so(或您正在安装的版本)。

  6. 备份 httpd.conf -->sudo cp /usr/libexec/apache2/httpd.conf /usr/libexec/apache2/httpd.conf.bak

  7. 编辑 httpd.conf -->sudo nano /usr/libexec/apache2/httpd.conf并更改LoadModule php5_module libexec/apache2/libphp5.soLoadModule php5_module libexec/apache2/libphp5.4.8.so

  8. 将旧的 libphp5.so 放回去。-->sudo mv /usr/libexec/apache2/libphp5.so.bak /usr/libexec/apache2/libphp5.so

  9. 重新启动 apache(在设置中或使用sudo apachectl start

让我知道它是否对你有用

相关内容