php擴充套件AMQP,安裝報錯解決
容易出錯的地方有2個,一個是rabbitmq-c的版本不對,一個是lib64進行ln的時候要找對路徑。
參考網址:https://segmentfault.com/a/1190000012348103
https://blog.csdn.net/qq_35772366/article/details/78932367
#root賬號
yum install gcc glibc-devel make ncurses-devel openssl-devel xmlto
#非root賬號
wget http://erlang.org/download/otp_src_18.3.tar.gz
tar xvf otp_src_18.3.tar.gz
#配置 '--prefix'指定的安裝目錄
./configure --prefix=/usr/local/erlang --with-ssl -enable-threads -enable-smmp-support -enable-kernel-poll --enable-hipe --without-javac
#安裝
make && make install
#配置erlang環境變數
vim /etc/profile
#在檔案末尾新增下面程式碼 'ERLANG_HOME'等於上一步'--prefix'指定的目錄
ERLANG_HOME=/usr/local/erlang
PATH=$ERLANG_HOME/bin:$PATH
export ERLANG_HOME
export PATH
#使環境變數生效
source /etc/profile
#輸入命令檢驗是否安裝成功
erl
#如下輸出表示安裝成功
#
#
wget http://www.rabbitmq.com/releases/rabbitmq-server/v3.6.1/rabbitmq-server-generic-unix-3.6.1.tar.xz
#RabbitMQ3.6版本無需make、make install 解壓就可以用
#解壓rabbitmq,官方給的包是xz壓縮包,所以需要使用xz命令
xz -d rabbitmq-server-generic-unix-3.6.1.tar.xz
#xz解壓後得到.tar包,再用tar命令解壓
tar -xvf rabbitmq-server-generic-unix-3.6.1.tar
#移動目錄 看個人喜好
cp -rf ./rabbitmq_server-3.6.1 /usr/local/
cd /usr/local/
#修改資料夾名
mv rabbitmq_server-3.6.1 rabbitmq-3.6.1
#開啟管理頁面外掛
cd ./rabbitmq-3.6.1/sbin/
./rabbitmq-plugins enable rabbitmq_management
#啟動命令,該命令ctrl+c後會關閉服務
#./rabbitmq-server
#在後臺啟動Rabbit
#./rabbitmq-server -detached
#關閉服務
#./rabbitmqctl stop
#關閉服務(kill) 找到rabbitmq服務的pid [不推薦]
#ps -ef|grep rabbitmq
#kill -9 ****
#新增管理員賬號
#進入RabbitMQ安裝目錄
cd /usr/local/rabbitmq-3.6.1/sbin
#新增使用者
#rabbitmqctl add_user Username Password
./rabbitmqctl add_user rabbitadmin 123456
#分配使用者標籤
#rabbitmqctl set_user_tags User Tag
#[administrator]:管理員標籤
./rabbitmqctl set_user_tags rabbitadmin administrator
#http://192.168.70.128:15672/
#
#
#
#PHP Version 5.5.7
#
#
#
#
安裝rabbitmq-c
wget https://github.com/alanxz/rabbitmq-c/releases/download/v0.5.2/rabbitmq-c-0.5.2.tar.gz
https://github.com/alanxz/rabbitmq-c/archive/v0.5.2.tar.gz
在安裝amqp之前還需要安裝另外一個通訊擴充套件rabbitmq-c。
去github下載最新版本(目前是0.8.0)的原始碼包並解壓縮。
tar -zxvf rabbitmq-c-0.5.2.tar.gz -C .rabbitmq-c-0.5.2
cd rabbitmq-c-0.5.2/
mkdir build && cd build #這一步是在rabbitmq-c的根目錄下建立一個build子目錄
# 這一步是讓cmake根據../CMakeList.txt,即rabbitmq-c的根目錄下的CMakeList.txt建立Makefile檔案
# Makefile檔案會被建立到build目錄中
# yum install cmake
# cmake --version
cmake -DCMAKE_INSTALL_PREFIX=/usr/local/rabbitmq-c ..
# 這一步是真正的build rabbitmq-c庫的,注意,不要漏掉點 '.'
cmake --build . --target install
cd /usr/local/rabbitmq-c & ln -s lib64 lib
安裝amqp
從pecl官方庫中下載最新的amqp擴充套件包
wget http://pecl.php.net/get/amqp-1.4.0.tgz
tar -zxvf amqp-1.4.0.tgz
cd amqp-1.4.0
/alidata/server/php/bin/phpize
./configure --with-php-config=/alidata/server/php/bin/php-config --with-amqp --with-librabbitmq-dir=/usr/local/rabbitmq-c
make && make install
配置amqp擴充套件
vi /alidata/server/php/etc/php.ini
新增 extension=amqp.so
#重啟 php
php-fpm -v
killall php-fpm && /alidata/server/php/sbin/php-fpm &