Mac下已經爲我們集成了php5.4、apache2。所以在Mac下開發PHP是一種不錯的選擇;
安裝環境
osx10.9.4
xcode Version 5.1.1 (5B1008)
如果您已經裝好以上環境就可以跟着本文安裝PHP開發環境了
老規矩,本文安裝使用的Homebrew進行Mac軟件包管理器來安裝,方便以後升級和擴展.
這裏我們不使用mac給我們提供的php和apache,我們來全新安裝環境,當然我們也不要去刪除自帶的php和apache,以免出現系統不穩定(xcode要用到)。
首先,安裝一下編輯器,這裏推薦安裝sublime3,方便等下修改配置文件
下載地址:SublimeOS X版本(10.7 or later is required)
安裝完畢之後做一個鏈接,以後使用sublime直接可以使用subl
sudo ln -s /Applications/Sublime\ Text.app/Contents/SharedSupport/bin/subl /bin/subl
第二步,安裝Homebrew
ruby -e "$(curl -fsSL https://raw.github.com/mxcl/homebrew/go/install)"
安裝過程有點漫長,由於國內網絡複雜原因,建議安裝homebrew的時候使用v p n
更新下brew
brew update
安裝Nginx1.6.0
brew install nginx
mkdir -p ~/Library/LaunchAgents
#添加到開機啓動
ln -sfv /usr/local/opt/nginx/*.plist ~/Library/LaunchAgents
#下面這兩句必須,否則開機自啓動不會成功
sudo chown root:wheel /usr/local/Cellar/nginx/1.6.0_1/bin/nginx
sudo chmod u+s /usr/local/Cellar/nginx/1.6.0_1/bin/nginx
sudo chown -R $USER /usr/local/var/log/nginx/
#等全部安裝完環境在進行配置
安裝php5.5.14
brew tap homebrew/dupes
brew tap josegonzalez/homebrew-php
#以下命令必須執行,否則會出現找不到openssl的錯誤
xcode-select --install
brew install --without-apache --with-fpm --with-mysql php55
#替換path
vi ~/.bash_profile
export PATH="/usr/local/bin:/usr/local/sbin:$PATH"
#測試一下版本
php -v or php-fpm -v
#安裝完畢設置php-fpm自啓動
ln -sfv /usr/local/opt/php55/*.plist ~/Library/LaunchAgents
安裝mysql5.6.19
brew install mysql
#啓動mysql
mysql.server start
#設置root密碼
mysqladmin -u root password
#mysql開機自啓動
ln -sfv /usr/local/opt/mysql/*.plist ~/Library/LaunchAgents
配置Nginx (開發環境配置,非生產環境)
#備份原始配置
mv /usr/local/etc/nginx/nginx.conf /usr/local/etc/nginx/nginx.conf.bak
#配置文件
vi /usr/local/etc/nginx/nginx.conf
#寫入以下內容,user要改成你的當前登錄賬戶
user zhuzhenyu staff;
worker_processes 2;
#error_log logs/error.log;
#error_log logs/error.log notice;
#error_log logs/error.log info;
events {
worker_connections 1024;
}
http {
#列目錄,方便調試
autoindex on;
include mime.types;
sendfile on;
#keepalive_timeout 65;
# gzip on;
# gzip_disable "MSIE [1-6]\.(?!.*SV1)";
include vhost/*.conf;
}
#創建include_php.conf
vi /usr/local/etc/nginx/include_php.conf
#寫入以下內容
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
fastcgi_param SERVER_NAME $host;
fastcgi_intercept_errors on;
#創建虛擬主機配置目錄
mkdir /usr/local/etc/nginx/vhost
#這裏做演示創建一個虛擬主機:blog.com
subl /usr/local/etc/nginx/vhost/blog.com.conf
#寫入以下內容
server {
listen 80;
server_name blog.com;
root /Users/zhuzhenyu/workspace/blog.com;
index index.php index.html index.htm;
location / {
if (!-e $request_filename) {
rewrite ^(.*)$ /index.php?s=$1 last;
break;
}
}
location ~ \.php$ {
include include_php.conf;
}
}
#以後只要創建虛擬主機在/usr/local/etc/nginx/vhost/xxx.conf即可
#創建web目錄
mkdir -p ~/workspace/blog.com
subl ~/workspace/blog.com/index.php
#寫入以下內容
<?php
phpinfo();
#操作nginx,(如果修改過nginx配置文件,切記一定要重啓)
nginx -t #檢測nginx配置文件語法
nginx start #啓動
nginx -s reload #平滑重啓
nginx restart #重啓
配置php
subl /usr/local/etc/php/5.5/conf.d/test_load.ini
#寫入如下內容
short_open_tag = On
display_errors = On
display_startup_errors = On
upload_max_filesize = 256M
date.timezone = "Asia/Shanghai"
error_reporting = E_ALL
#保存即可
#爲了測試,我們修改下本機的host
sudo vi /etc/hosts
#添加一條記錄
127.0.0.1 blog.com
這時候,我們在瀏覽器輸入http://blog.com會出現如下結果