杂谈二,homebrew+mac+php-fpm---升级mavericks后导致php-memcache的奔溃,最终全盘崩塌

又是一篇杂谈,只是用来记录一些不成规律的小东西。

最近因为mac系统升级,原先被删掉的apache2突然又冒出来,然后memcache找不到,php.ini修改失效等等,各路奇葩问题都显现出来。

心伤~

再三折磨后,决定一击毙之,全部删除php、nginx、apache、pear、macport等等,改用homebrew重新装。

过程相当简单,效果也不错,homebrew显然优点很明显,编译安装后位置集中,统一放在/usr/local/下,配置在/usr/local/ect/下,执行文件放在/usr/local/bin或者sbin下,源文件放在

/usr/local/Cellar/下。很棒!

一、安装homebrew也很简单,到官网复制一个命令,自动安装。(官网地址:http://brew.sh/index_zh-cn.html)

二、安装后,

  brew tap homebrew/dupes

  brew tap josegonzalez/homebrew-php

  brew install git

(安装git这个我没试,因为之前已经装过了,不知道是否必须装)

  brew update

三、如果之前已经装过macport、pear、nginx、apache等等的,最好运行brew doctor看一下。

  brew doctor

  它会告诉你,哪些文件需要删除,哪些对以后的安装有影响。(很重要)

四、brew search 命令搜索你要安装的东西。

  brew search nginx (将列出相关nginx)或者 brew search php (列出所有php相关)

五、brew install 命令直接安装

  brew install nginx

六、查看终端输出,千万别一看到安装成功,没有error,就觉得结束了,要看看里面的英文,很多时候会有一些事要做。

  比如:nginx要开机启动相关的一些命令或者php命令要建一下软连接之类,它会有提示和具体命令,只要复制粘贴过来,运行一下即可。easy~

七、开启,sudo nginx

  重启:sudo nginx -s reload

八、安装php

brew install php55 --with-fpm //一定要带上fpm,默认是不安装的,到时nginx报502 网关错误就蛋疼鸟~

备注:

  1、很多时候,brew安装失败,都是因为之前的残余文件没删干净,导致安装失败,深有体会,故此特作提醒,多用brew doctor。

  为了加固记忆警醒后人,举一小例子。比如pear没删干净,安装brew install php55 --with--fpm ,报错,pear没删干净,要删掉Users目录下pear.conf和

.pearrc,以及/usr/local/etc 和lib 还有share中。

  2、有时安装成功,但link不成功,brew会要求你运行brew link **** (某个formula),但这时很容易报错,因为往往是brew自动执行不了,才要你手动link。

这时我们可以用:brew link ****(比如php55) ---overwrite 。一般都可以解决。如果某些文件实在权限太高,无法覆盖,根据提示挨个删除或者修改权限。

  3、对于安装php55或其他一些软件,需要带上附件的,可以通过以下命令查看。

    brew options php55

  备注:man php-fpm 后可以看的

  4、很多502 网关错误,都是因为php-fpm没调起来~ 很常见~ 各位注意~

5、brew 安装完php和php-fpm后,会将/usr/local/Cellar/php55/5.5.11/ 下的bin或者sbin中的php、php-cgi、php-fpm、phpize等等,生成硬链接到/usr/bin或者sbin中,同时会生成软链接到 /usr/local/bin或者sbin中,软链接用ls -l可以看出来,但硬链接看不出来哦~

相关链接:

http://dhq.me/mac-install-nginx-mysql-php-fpm //good

http://lukin.cn/p/MAC_OSX_Install_Nginx_PHP-FPM.html

http://www.kimhou.com/?p=302