你是对的,Yosemite的内置PHP没有PNG和FreeType支持。
更新2015/10为El Captian:与OS X 10.11 El Capitan PNG支持回来,但FreeType仍然缺失。
解
使用Homebrew包管理器无痛地构建和安装完整的PHP,并在Apache的配置中替换它。如果您按照以下步骤,整个过程只需要大约十分钟。
快速(但完整)步行
(注1:我在这里使用Homebrew,OS X的包管理系统。如果你熟悉MacPorts – 另一个包管理器,你可以获得与该系统相同的结果,也可以并行使用我的Homebrew解决方案您机器上现有的MacPorts安装。)
(注意2:如果你想阅读有关安装过程的所有细节,请看看Homebrew basic installation和Homebrew PHP installation的信息,但是你真的不需要,如果你按照这些步骤。)
现在让我们去…
首先安装Xcode from App Store.如果你已经有了,再次检查App Store,以确保你有最新的版本!
现在您需要安装Xcode命令行工具。为此,请打开终端并输入:
xcode-select --install
下一个命令将安装Homebrew包管理器系统:
ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
脚本解释它会做什么,然后在它做之前暂停。
下一个要进入的命令是一种系统状态测试:
brew doctor
这将检查Homebrew安装的基本知识。
我收到一条警告“你有MacPorts或Fink安装:/ opt / local / bin / port …”,我被成功忽略。 😉
现在设置我们需要的依赖关系的homebrew / dupes tap:
brew tap homebrew/dupes
设置homebrew /版本点击它也有我们需要的依赖:
brew tap homebrew/versions
然后运行以下命令:
brew tap homebrew/homebrew-php
现在你已经准备好最终构建PHP。有关可用配置选项的列表,您可以运行以下选项之一:
brew options php55
brew options php56
但我很好只是使用默认值。
为此,请根据您的需要输入这两个选项之一:
brew install php55
brew install php56
(这需要一段时间,请耐心等待!)
while installing php56 (5.6.x) on Yosemite (10.10.5) there is a bug please see this 07003 on github. use brew install php56 --without-ldap instead.
如果你得到类型“无法找到OpenSSL的”的错误,你没有安装Xcode命令行工具,我开始告诉你。 ;)继续,安装它们并重新运行最后一个命令。
PHP是现在构建的,脚本将结束一些关于如何使用它的细节:
打开httpd.conf(应位于/private/etc/apache2/httpd.conf),并通过添加以下两行之一来启用PHP,具体取决于您刚刚安装的PHP版本:
LoadModule php5_module /usr/local/opt/php55/libexec/apache2/libphp5.so
LoadModule php5_module /usr/local/opt/php56/libexec/apache2/libphp5.so
不要忘记注释掉任何现有的LoadModule php5_module …行,可能是来自Yosemite自己的PHP版本!
重新启动Apache
sudo apachectl restart
您的新php.ini文件可以在以下位置找到:/usr/local/etc/php/5.5/php.ini
请享用!