如果你原来使用过brew安装php的话,先使用
brew unlink php56
php56即(php5.6版本),如果你使用的是mac自带的php,可以忽略该命令。
接下来安装php7.0
brew install php70 --with-gmp --with-httpd --with-debug --with-imap
后面参数一定要带上,如果不带参数,直接使用brew install php70命令安装,最后安装成功后,没有libphp7.so。我们无法在Apache中引用php7。
(mac 最新系统Sierra的发布,Apache加载php的模块(libphpx.so)不再默认生成,在安装php7的时候,要添加–with-httpd参数)
安装好过后开启PHP70进程
brew link php70
输入命令,查看是否成功
php -v
修改Apache配置文件
打开Apache配置文件
sudo vim /etc/apache2/httpd.conf
将模块php5的注释掉,添加php7的。
#LoadModule php5_module libexec/apache2/libphp5.so
LoadModule php7_module /usr/local/opt/php70/libexec/apache2/libphp7.so
注意:libphp7.so是默认安装在/usr/local/opt/php70/libexec/apache2/目录下的,按照你的实际情况,换成你自己的安装路径即可。
<IfModule php7_module>
AddType application/x-httpd-php .php
AddType application/x-httpd-php-source .phps
<IfModule dir_module>
DirectoryIndex index.html index.php
</IfModule>
</IfModule>
更改配置文件为php7_module的。。
打开.bash_profile文件,添加php7环境变量:
export PATH=/usr/local/opt/php70/bin:$PATH;
然后:
source .bash_profile
现在可以使用 php -v命令了。
最后重启Apache即可,
sudo apachectl restart
2. 安装Mysql
brew install mysql
安装mysql。
==> Downloading https://homebrew.bintray.com/bottles/mysql-5.7.17.sierra.bottle.tar.gz
######################################################################## 100.0%
==> Pouring mysql-5.7.17.sierra.bottle.tar.gz
==> Using the sandbox
==> /usr/local/Cellar/mysql/5.7.17/bin/mysqld --initialize-insecure --user=liangze --basedir=/usr/local/Cellar/mysql/5.7.17 --datadir=/usr/local/var/mysql --t
==> Caveats
We've installed your MySQL database without a root password. To secure it run:
mysql_secure_installation
To connect run:
mysql -uroot
To have launchd start mysql now and restart at login:
brew services start mysql
Or, if you don't want/need a background service you can just run:
mysql.server start
==> Summary
/usr/local/Cellar/mysql/5.7.17: 14,226 files, 444.4M
那么我们就按照brew的提示运行 mysql_secure_installation,运行后会报错:
> mysql_secure_installation
Securing the MySQL server deployment.
Enter password for user root:
Error: Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2)
莫慌,提示说找不到mysql.sock。原因是mysql进程还没启动
6. 启动mysql服务
mysql.server start
7.再运行(如果不需要设置密码之类的信息直接忽略)
> mysql_secure_installation
8. 最后测试一下登陆
> mysql -u root -p
3. 安装的PHP确实 Mcrypt 模块
很多朋友用命令 brew install php70-mcrypt 成功,但是该模块并没有工作?
解决思路:
添加参数(-fs):尝试brew reinstall -fs php70-mcrypt
Xdebug 同理:
brew reinstall -fs homebrew/php/php70-xdebug
4. 安装PHP扩展redis
brew install --build-from-source homebrew/php/php70-redis
重启apache服务, 利用php -m 或者 phpinfo()查看扩展是否添加成功;
注意: 如果报错:
这个应该是少一个依赖或者igbinary依赖不正常,执行:
如果已经装了igbinary依赖依旧报错: 重新安装:
brew reinstall --build-from-source php70-igbinary
否则直接安装:brew install --build-from-source php70-igbinary
安装完成后重启apache服务即可