這篇文章主要介紹了Mac系統下使用brew搭建PHP(LNMP/LAMP)開發環境,本文講解了使用Brew手動搭建PHP的開發環境,包括Apache、Nginx、PHP、MySQL、MongoDB、PHPMyAdmin等配置,需要的朋友可以參考下
Mac下搭建lamp開發環境很容易,有xampp和mamp現成的集成環境。但是集成環境對于經常需要自定義一些配置的開發者來說會非常麻煩,而且Mac本身自帶apache和php,在brew的幫助下非常容易手動搭建,可控性很高。
Brew
brew對于mac,就像apt-get對于ubuntu,安裝軟件的好幫手,不能方便更多…
brew的安裝方式如下:
ruby -e "$(curl -fsSL https://raw.github.com/mxcl/homebrew/go/install)"
brew常用選項,代碼如下:
- brew install xxx
- brew uninstall xxx
- brew list
- brew update xxx
- Apache || Nginx
Apache
Apache的話使用mac自帶的基本就夠了,我的系統是10.9,可以使用以下命令控制Apache
代碼如下:
sudo apachectl start
sudo apachectl restart
sudo apachectl stop
唯一要改的是主目錄,mac默認在home下有個sites(站點)目錄,訪問路徑是,代碼如下:
http://localhost/~user_name
這樣很不適合做開發用,修改/etc/apache2/httpd.conf內容,代碼如下:
- DocumentRoot "/Users/username/Sites"
- <Directory />
- Options Indexes MultiViews
- AllowOverride All
- Order allow,deny
- Allow from all
- </Directory>
這樣sites目錄就是網站根目錄了,代碼都往這個下頭丟
Nginx
要使用Nginx也比較方便,首先安裝:
brew install nginx
啟動關閉Nginx的命令如下(如果想要監聽80端口,必須以管理員身份運行)代碼如下:
- #打開 nginx
- sudo nginx
- #重新加載配置|重啟|停止|退出 nginx
- nginx -s reload|reopen|stop|quit
- #測試配置是否有語法錯誤
- nginx -t
配置Nginx,代碼如下:
cd /usr/local/etc/nginx/
mkdir conf.d
修改Nginx配置文件,代碼如下:
vim nginx.conf
主要修改位置是最后的include,代碼如下:
- worker_processes 1;
- error_log /usr/local/var/log/nginx/error.log warn;
- pid /usr/local/var/run/nginx.pid;
- events {
- worker_connections 256;
- }
- http {
- include mime.types;
- default_type application/octet-stream;
- log_format main '$remote_addr - $remote_user [$time_local] "$request" '
- '$status $body_bytes_sent "$http_referer" '
- '"$http_user_agent" "$http_x_forwarded_for"';
- access_log /usr/local/var/log/nginx/access.log main;
- port_in_redirect off;
- sendfile on;
- keepalive_timeout 65;
- include /usr/local/etc/nginx/conf.d/*.conf;
- }
修改自定義文件,代碼如下:
vim ./conf.d/default.conf
增加一個監聽端口,代碼如下:
- server {
- listen 80;
- server_name localhost;
- root /Users/username/Sites/; # 該項要修改為你準備存放相關網頁的路徑
- location / {
- index index.php;
- autoindex on;
- }
- #proxy the php scripts to php-fpm
- location ~ /.php$ {
- include /usr/local/etc/nginx/fastcgi.conf;
- fastcgi_intercept_errors on;
- fastcgi_pass 127.0.0.1:9000;
- }
- }
這個時候還不能訪問php站點,因為還沒有開啟php-fpm。
雖然mac 10.9自帶了php-fpm,但是由于我們使用了最新的PHP,PHP中自帶php-fpm,所以使用PHP中的php-fpm可以保證版本的一致。
這里的命令在安裝完下一步的php后再執行,代碼如下:
sudo nginx
sudo php-fpm -D
PHP
PHP在mac下默認安裝了,但是不好控制版本,利用brew可以再mac下安裝最新版本,甚至是多個版本,我裝了php5.5,代碼如下:
- brew update
- brew tap homebrew/dupes
- brew tap josegonzalez/homebrew-php
- # brew install php55 --with-fpm #Nginx
- brew install php55 #Apache
然后修改php的cli路徑和apache使用的php模塊。在.bashrc或.zshrc里頭加以下內容,代碼如下:
#export PATH="$(brew --prefix josegonzalez/php/php55)/bin:$PATH"
export PATH="/usr/local/bin:/usr/local/sbin:$PATH"
就用剛剛安裝的php代替了系統默認cli的php版本。然后在/etc/apache2/httpd.conf下增加代碼如下:
LoadModule php5_module /usr/local/Cellar/php55/5.5.8/libexec/apache2/libphp5.so
這樣就對apache使用的php版本也進行了修改。
后面會用到mongo和mysql,所以可以直接利用下面命令安裝php模塊,其他模塊也類似代碼如下:
brew install php55-mysql
brew install php55-mongo
MySQL
mac不自帶mysql,這里需要重新安裝,方法依然很簡單,代碼如下:
- brew install mysql
- unset TMPDIR
- mysql_install_db --verbose --user=`whoami` --basedir="$(brew --prefix mysql)" --datadir=/usr/local/var/mysql --tmpdir=/tmp
- sudo chown -R your_user /usr/local/var/mysql/
第一句是安裝,后面的是確保正常使用。然后是啟動命令,代碼如下:
mysql.server start
最好給mysql設個密碼,方法如下:
mysqladmin -u root password 'xxx'
如果想修改mysql的配置,在/usr/local/etc下建立一個my.cnf,例如增加log:
- [mysqld]
- general-log
- general_log_file = /usr/local/var/log/mysqld.log
- MongoDB
MongoDB可以說是最簡單的一個,直接執行:
brew install mongodb
啟動方法,代碼如下:
mongod --fork
PHPMyAdmin
phpmyadmin幾乎是管理mysql最容易的web應用了吧,每次我都順道裝上。
1.去官網下載最新的版本
2.解壓到~/Sites/phpmyadmin下
3.在phpmyadmin目錄下創建一個可寫的config目錄
4.打開http://localhost/phpmyadmin/setup,安裝一個服務,最后保存(這里只需要輸入帳號密碼就夠了)
5.將config下生成的config.inc.php移到phpmyadmin根目錄下
6.刪除config
這樣就裝好了,雖然可能有點小復雜,但是來一次就習慣了。
這里很可能會遇到2002錯誤,就是找不到mysql.sock的問題,用下面方法解決:
sudo mkdir /var/mysql
sudo ln -s /tmp/mysql.sock /var/mysql/mysql.sock
RockMongo
RockMongo是MongoDB很好用的一個web應用,安裝也很容易
1.去官網下載最新版本
2.解壓到~/Sites/rockmongo下
3.運行http://localhost/rockmongo即可
完成
這樣就在mac下配置好一個php開發環境了,enjoy it!
新聞熱點
疑難解答