天天看点

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扩展环境