首先,神马是amqp?介绍在这里,简单的讲就是高级队列协议。而这个扩展就是为了让php可以支持amqp协议与相关的队列服务通讯。
PHP官网的amqp模块介绍在此,我也不多介绍。下面进入重点的安装环节。
http://www.php.net/manual/en/book.amqp.php
用于ubuntu的默认源里面没有php5-amqp这个包,所以要用上amqp得考手动编译。
准备工作:
# 安装php编译工具
sudo apt-get install php5-dev
# 安装rabbitmq的库
sudo apt-get install librabbitmq-dev
如果你的Linux发行版没有现成的librabbitmq-dev包,那么可以通过下载源码编译安装
然后如果你没有安装git话请安装一下git,因为我们要从官方的版本库中获取源代码
# 克隆源码并编译
git clone git://github.com/alanxz/rabbitmq-c.git
cd rabbitmq-c
git submodule init
git submodule update
# 编译库
autoreconf -i && ./configure && make && sudo make install
然后我们需要去下载php扩展的源代码,地址在此:
http://pecl.php.net/package/amqp
当前最新版本为1.0.7
wget http://pecl.php.net/get/amqp-1.0.7.tgz
tar zxf amqp-1.0.7.tgz
cd amqp-1.0.7/
phpize && ./configure --with-amqp && make && sudo make install
# 创建配置文件
sudo echo "extension = amqp.so" > /etc/php5/conf.d/amqp.ini
然后重启你的web服务器或者php-fpm并打印phpinfo,如果见到以下的内容就说明扩展安装好了