又是一篇雜談,只是用來記錄一些不成規律的小東西。php
最近由於mac系統升級,原先被刪掉的apache2忽然又冒出來,而後memcache找不到,php.ini修改失效等等,各路奇葩問題都顯現出來。html
心傷~mysql
再三折磨後,決定一擊斃之,所有刪除php、nginx、apache、pear、macport等等,改用homebrew從新裝。nginx
過程至關簡單,效果也不錯,homebrew顯然優勢很明顯,編譯安裝後位置集中,統一放在/usr/local/下,配置在/usr/local/ect/下,執行文件放在/usr/local/bin或者sbin下,源文件放在git
/usr/local/Cellar/下。很棒!sql
1、安裝homebrew也很簡單,到官網複製一個命令,自動安裝。(官網地址:http://brew.sh/index_zh-cn.html)apache
2、安裝後,
php-fpm
brew tap homebrew/dupes
brew tap josegonzalez/homebrew-php
brew install git
(安裝git這個我沒試,由於以前已經裝過了,不知道是否必須裝) brew update
spa
3、若是以前已經裝過macport、pear、nginx、apache等等的,最好運行brew doctor看一下。code
brew doctor
它會告訴你,哪些文件須要刪除,哪些對之後的安裝有影響。(很重要)
4、brew search 命令搜索你要安裝的東西。
brew search nginx (將列出相關nginx)或者 brew search php (列出全部php相關)
5、brew install 命令直接安裝
brew install nginx
6、查看終端輸出,千萬別一看到安裝成功,沒有error,就以爲結束了,要看看裏面的英文,不少時候會有一些事要作。
好比:nginx要開機啓動相關的一些命令或者php命令要建一下軟鏈接之類,它會有提示和具體命令,只要複製粘貼過來,運行一下便可。easy~
7、開啓,sudo nginx
重啓:sudo nginx -s reload
8、安裝php
brew install php55 --with-fpm //必定要帶上fpm,默認是不安裝的,到時nginx報502 網關錯誤就蛋疼鳥~
備註:
一、不少時候,brew安裝失敗,都是由於以前的殘餘文件沒刪乾淨,致使安裝失敗,深有體會,故此特做提醒,多用brew doctor。
爲了加固記憶警醒後人,舉一小例子。好比pear沒刪乾淨,安裝brew install php55 --with--fpm ,報錯,pear沒刪乾淨,要刪掉Users目錄下pear.conf和
.pearrc,以及/usr/local/etc 和lib 還有share中。
二、有時安裝成功,但link不成功,brew會要求你運行brew link **** (某個formula),但這時很容易報錯,由於每每是brew自動執行不了,纔要你手動link。
這時咱們能夠用:brew link ****(好比php55) ---overwrite 。通常均可以解決。若是某些文件實在權限過高,沒法覆蓋,根據提示挨個刪除或者修改權限。
三、對於安裝php55或其餘一些軟件,須要帶上附件的,能夠經過如下命令查看。
brew options php55
備註:man php-fpm 後能夠看的
四、不少502 網關錯誤,都是由於php-fpm沒調起來~ 很常見~ 各位注意~
五、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