這兩天重新安裝了下MAC系統下的nginx+php+mysql環境,今天整理一下安裝步驟:
1、安裝 homebrew
ruby -e "$(curl -fsSL https://raw.github.com/Homebrew/homebrew/go/install)"
就這麼簡單,一條命令就可以完成 homebrew 的安裝。
參考資料:http://brew.sh/index_zh-cn.html
2、安裝 nginx
brew install nginx
brew 執行完成後,nginx 就安裝成功了。
nginx 的操作命令:
#開啟 nginx
sudo nginx
#重新載入配置|重啟|停止|退出 nginx
nginx -s reload|reopen|stop|quit
#測試組態是否有語法錯誤
nginx -t
啟動 nginx 後,預設的開啟的是8080連接埠,可以通過修改設定檔來設定連接埠:
vim /usr/local/etc/nginx/nginx.conf
預設訪問的目錄:
/usr/local/Cellar/nginx/1.4.7/html
我這裡安裝的nginx版本為1.4.7
安裝完 nginx 後,nginx 是不會隨機啟動的,需要設定一下。
設定 nginx 開機啟動:
mkdir -p ~/Library/LaunchAgents
cp /usr/local/Cellar/nginx/1.4.7/homebrew.mxcl.nginx.plist ~/Library/LaunchAgents/
launchctl load -w ~/Library/LaunchAgents/homebrew.mxcl.nginx.plist
設定許可權:
sudo chown root:wheel /usr/local/Cellar/nginx/1.4.7/bin/nginx
sudo chmod u+s /usr/local/Cellar/nginx/1.4.7/bin/nginx
OK,到這裡我們已經成功安裝了nginx並設定開機啟動。
3、安裝mysql
brew install mysql
配置mysql資料庫:
mysql_install_db --verbose --user=`whoami` --basedir="$(brew --prefix mysql)" --datadir=/usr/local/var/mysql --tmpdir=/tmp
執行完成後就可以在終端中運行 mysql 命令了。
這裡需要注意一下,我們可以不要求輸入密碼就可以進入 mysql,可以通過一些安全設定、設定使用者密碼來保證安全性。
設定 mysql 開機啟動:
mkdir -p ~/Library/LaunchAgents/
cp /usr/local/Cellar/mysql/5.6.17/homebrew.mxcl.mysql.plist ~/Library/LaunchAgents/
launchctl load -w ~/Library/LaunchAgents/homebrew.mxcl.mysql.plist
mysql 設定檔:
/usr/local/Cellar/mysql/5.6.17/my.cnf
至此,mysql 就安裝完成了。
4、安裝 php
MAC本來就內建了 php,但是很多擴充沒有安裝,所以選擇了重新安裝php。
首先,我們需要安裝第三方程式包。www.111cn.net
brew tap homebrew/dupes
brew tap josegonzalez/homebrew-php
我們可以查看下 brew 下有那些 php 版本
brew search php
brew install php54 --with-imap --with-tidy --with-debug --with-pgsql --with-mysql --with-fpm
更多的php選項可以通過以下命令查看:
brew options php54
由於是重裝php,之前系統預裝的php還沒卸載,因此在終端調用php時,還是以之前系統的php版本做解析,所以這裡需要修改path,指定 php 的解析路徑。在~/.bashrc(沒有則建立)最後加入一行:
export PATH="$(brew --prefix php54)/bin:$PATH"
執行一下 source 使之生效
source ./.profile
php 設定檔:
/usr/local/etc/php/5.4/php.ini
php-fpm 設定檔:
/usr/local/etc/php/5.4/php-fpm.conf
啟動 php-fpm 的話就直接在終端裡執行 "php-fpm",預設開啟 php-fpm 會顯示一個狀態 shell 出來,也可以把 php-fpm 的設定檔裡的 "daemonize = no" 改為 "daemonize = yes",就會以後台守護進程的方式啟動,對於剛修改的設定檔,可以執行 "php-fpm -t" 來檢測配置有沒有問題。
開機啟動php-fpm:
mkdir -p ~/Library/LaunchAgents
cp /usr/local/Cellar/php54/5.4.26/homebrew-php.josegonzalez.php54.plist ~/Library/LaunchAgents/
launchctl load -w ~/Library/LaunchAgents/homebrew-php.josegonzalez.php54.plist
5、設定 nginx 的 php-fpm 的配置
下面是自己配置虛擬機器的nginx 設定檔:
server {
listen 80;
server_name www.test.com;
root /Users/sumw/www/www.test.com;
index index.html index.htm index.php;
location / {
try_files $uri $uri/ /index.php;
}
location ~ .php$ {
try_files $uri =404;
include fastcgi.conf;
fastcgi_pass 127.0.0.1:9000;
}
}
至此,我們的 nginx+php+mysql 環境就安裝完成了。
不過好像這裡有個問題,MAC開機重啟後,php又恢複到了內建的php版本,解決方案:
調整一下path順序:
www.111cn.net
ls -al /usr/local/bin/php
/usr/local/bin/php -> ../Cellar/php54/5.4.19/bin/php
把/usr/local/bin調整到第一位
cat ~/.bash_profile
export PATH=/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin