可能失败的安装方式
一般的安装方式是使用如下命令
curl -s http://php-osx.liip.ch/install.sh | bash -s 5.6
但在国内不好使,唯一还好使用的工具是homebrew
正确的安装方式
使用如下命令:
brew install php@5.6
安装后会有以下输出:
To enable PHP in Apache add the following to httpd.conf and restart Apache:
LoadModule php5_module /usr/local/opt/php@5.6/lib/httpd/modules/libphp5.so
<FilesMatch \.php$>
SetHandler application/x-httpd-php
</FilesMatch>
Finally, check DirectoryIndex includes index.php
DirectoryIndex index.php index.html
The php.ini and php-fpm.ini file can be found in:
/usr/local/etc/php/5.6/
php@5.6 is keg-only, which means it was not symlinked into /usr/local,
because this is an alternate version of another formula.
If you need to have php@5.6 first in your PATH run:
echo 'export PATH="/usr/local/opt/php@5.6/bin:$PATH"' >> ~/.zshrc
echo 'export PATH="/usr/local/opt/php@5.6/sbin:$PATH"' >> ~/.zshrc
For compilers to find php@5.6 you may need to set:
export LDFLAGS="-L/usr/local/opt/php@5.6/lib"
export CPPFLAGS="-I/usr/local/opt/php@5.6/include"
To have launchd start exolnet/deprecated/php@5.6 now and restart at login:
brew services start exolnet/deprecated/php@5.6
Or, if you don't want/need a background service you can just run:
php-fpm
==> Summary
? /usr/local/Cellar/php@5.6/5.6.40: 498 files, 60.5MB
指出了php.ini文件的位置是/usr/local/etc/php/5.6/
,非常关键,不可以丢失,方便以后用于配置。
启用php5
一般Apacha的配置文件httpd.conf
位于/etc/apache2/
下
打开httpd.conf
, 找到php7_module行, 插入php5的配置,如下:
#php5配置
# php7安装但默认并不开启
#LoadModule php7_module libexec/apache2/libphp7.so
# php5配置开启, 不可同时开启php7
LoadModule php5_module /usr/local/opt/php@5.6/lib/httpd/modules/libphp5.so
# php5安装时,引导要添加的内容
<FilesMatch \.php$>
SetHandler application/x-httpd-php
</FilesMatch>
测试
新建index.php文件放apacha根目录
<?php
phpinfo();
?>
重启apacha服务
sudo apachectl restart