PHP5.3 安装rabbitmq扩展
安装rabbitmq服务端
1.sudo apt install rabbitmq-server #安装rabbitmq服务端
2.abbitmq-plugins enable rabbitmq_management #启动监控页面插件,浏览器通过localhost:15672访问,用户名:guest 密码:guest
安装依赖库rabbitmq-c
1.https://github.com/alanxz/rabbitmq-c.git #github地址,当前安装的时候为0.8
2.mkdir build && cd build
3.cmake -DCMAKE_INSTALL_PREFIX=/usr/local .. #只有这样指定才会生成/usr/local/librabbitmq.so.4
4.cmake --build . --target install
5.make && make install
6.sudo idconfig #这一步一定要执行,不然php -m 的时候始终提示librabbitmq.so.4 找不到
安装amqp
1.http://pecl.php.net/get/amqp-1.6.1.tgz #扩展地址,版本为1.6.1 。
2../configure --with-php-config=/usr/local/php/bin/php-config #编辑
3.make && make install
4.extension="/usr/local/php/lib/php/extensions/no-debug-non-zts-20090626/amqp.so" #php.ini中添加此行
5.service php-fpm restart
6.php -m #测试扩展是否加载成功
注意
1.amqp的版本和php的版本对不上,可能导致安装amqp的时候报错
2.由于rabbitmq-c提供的是源码包,所以需要cmake 来进行转换,在执行cmake的时候需要指定前缀
3.安装了rabbitmq-c后记得执行idconfig,否则在php -m 的时候一直提示找不到librabbitmq.so.4
遇到的错误
[06-Apr-2018 02:39:31] NOTICE: PHP message: PHP Warning: PHP Startup: Unable to load dynamic library '/usr/local/php/lib/php/extensions/no-debug-non-zts-20090626/amqp.so' - librabbitmq.so.4: cannot open shared object file: No such file or directory in Unknown on line 0
这个就是由于我没有执行idconfig 导致的,这个位置卡了很久。