PHP5.4 已经推出一段时间了,Macport 最近也发布了 php54 端口,但升级过程并不那么清晰。对于那些在同一台机器上维护多个 PHP 版本的新手来说,情况更糟。
我热衷于尝试 PHP5.4 中的一些新功能,如特征、新数组形式等,但为了其他兼容性问题,还是回到了 php5.3。
所以我
sudo port install php5+ (all the variants, apache2 etc)
然后我告诉它默认使用哪个 PHP 端口
sudo port select --set php php54
使用 php -v 输出 php 5.4.3 检查终端中活动的 PHP 版本。但我似乎在选择正确的非 CLI 版本时遇到了问题,因为 apache 等运行的模块版本仍然是 php5.3.12。
我是否必须更改 apache httpd.conf 中对 libphp5 的引用?任何有关在 macport 上切换 php 版本的正确工作流程的建议都非常感谢!
答案1
我卸载并重新安装了所有内容,但事后我看到了这些:php53-apache2handler @5.3.13 (lang, php, www) 和 php54-apache2handler @5.4.3 (lang, php, www)。
也许这曾经不是构建 macports MAMP 堆栈的必需步骤,但如果没有它,我在尝试启动服务器时会出错。安装后,服务器就可以正常工作并使用正确的版本。
sudo port install php54-apache2handler
进而
cd /opt/local/apache2/modules
sudo /opt/local/apache2/bin/apxs -a -e -n php5 mod_php54.so
本附件
LoadModule php5_module modules/mod_php54.so
到我的 httpd.conf,我必须手动删除旧的 LoadModule,因为它们有冲突。