天天看點

mac機上搭建php56/nginx 1.8.x/thinkphp 3.2.x/gearman擴充/seaslog擴充/redis擴充環境

php的各種擴充配置起來實在不容易,記錄一下備忘:

一、php56 安裝

雖然php7出來了,但是沒用過,不知道有沒有坑,這裡仍然使用php5.6版本

1.1 安裝php/php-pfm 

注意:記得要帶上--with-mysql 否則代碼無法連接配接mysql

1.2 添加環境變量

在~/.bash_profile(如果終端使用zsh的話,在~/.zshrc)裡參考下面的内容,進行添加:

1.3 驗證

1.4 php-fpm的停止及重新開機

  

二、thinkphp的下載下傳

2.1 下載下傳3.2.x版本(建議下載下傳full版本)

解壓到某個目錄:

比如:/Users/jimmy/Work/Code/php/ThinkPHP_3.2.2/

2.2 驗證

如何驗證後面會講。

三、nginx安裝及php轉發配置

3.1 安裝

3.2 php的rewrite處理

在/usr/local/etc/nginx/servers下建立一個名為tp.conf的檔案,内容參考以下:

然後

nginx -t 校驗配置檔案是否正确,如果沒問題

nginx -s reload 重新開機(如果之前沒有啟動nginx,直接nginx即可)

啟動過程中,如果出現警告worker連接配接數超過1024之類的(類似下面這樣)

nginx: [warn] 1024 worker_connections exceed open file resource limit: 256

可運作:

ulimit 4096 調大系統連接配接數

然後再

nginx -s reload

四、gearman的搭建

4.1 安裝

然後,在~/.zshrc中參考下面的内容修改:(目前是可直接在終端中運作gearmand指令)

4.2 啟動gearman

五、安裝Gearman擴充

5.1 安裝

(注:mac上預設沒有wget指令,可先用brew install wget安裝)

然後找一下php-config在本機的位置

(注:如果不是zsh終端,可能沒有where指令,改用whereis)

通常會在

繼續:

注:如果./configure這個指令找不到,說明本機mac上沒有安裝autoconf、automake,可先運作

然後再重新運作 phpize 及 ./configure ... 之類

檢視下php.ini的位置

修改php.ini檔案

找到; extension=msql.so的位置,添加一行内容(參考下面)

重新開機php-fpm

指令行驗證:

如果有看到gearman support =>enabled輸出,說明gearman擴充安裝成功了。

5.2. php使用gearman驗證

thinkphp根目錄下,建立一個名為client.php的檔案(相當于MQ中的消息發送方),内容參考下面:

再建立一個worker.php(相當于MQ中的消息接收方)

驗證,開二個終端視窗:

如果client及worker視窗,都能内容正常輸出,表示gearman及php代碼工作正常。

六、seaslog擴充

然後修改php.ini,添加以下二行  

其中seaslog.default_basepath是日志存放的目錄,大家根據本機情況自行調整。

 

七、redis擴充

剩下的跟前面這些擴充的編譯、安裝方法類似,隻是make install成功後,在php.ini裡,加一行:

最後别忘記了重新開機php-fpm,然後來一個終極校驗大法:thinkphp根目錄下,放一個info.php,裡面寫上:

然後浏覽http://localhost:8001/info.php,然後用浏覽器的頁面查找功能,搜尋gearman, redis, seaslog, mysql這些關鍵字,如果能跳到相關的位置,說明安裝成功了,參考下圖:

mac機上搭建php56/nginx 1.8.x/thinkphp 3.2.x/gearman擴充/seaslog擴充/redis擴充環境