您的位置:首页 > 编程语言 > PHP开发

消息队列rabbitmq安装及php扩展安装

2017-12-29 15:53 429 查看
网上的方法很多,但我自己装的时候总会报一个奇怪的错

collect2: ld returned 1 exit status
make: *** [amqp.la] Error 1 rabbitmq


安装rabbitmq有三步

第一步安装rabbitmq

这里我用的是yum源安装,当然也可以自行编译,找到相关的依赖,一个一个下,但是保不奇会遇到一些蛇皮错误。

yum install rabbitmq-server


第二步安装rabbitmq-c

yum 源安装的rabbitmq-server版本不高,当时我安的是最新版,可以是这个原因报错

nohup rabbitmq-server >/dev/null 2>/dev/null &


wget https://github.com/alanxz/rabbitmq-c/releases/download/v2.0/rabbitmq-c-0.5.2.tar.gz[/code] 
tar zxvf rabbitmq-c-0.5.2.tar.gz
cd rabbitmq-c-0.5.2
./configure --prefix=/usr/local/rabbitmq-c
make && make install


第三步安装php扩展so文件

pecl install amqp

第四步

vim php.ini

添加以下语句

extension=amqp.so

搞定

你也可以去下载相应的amqp的c扩展源码包进行安装,也许可以成功,但是我就是编译不成功,只能用pecl来安装

还可以启用web管理插件

cd /usr/lib/rabbitmq/bin
./rabbitmq-plugins enable rabbitmq_management


默认是在15672端口有一个web管理界面。

返正阿里云跟腾迅云就是边不上15672端口,所有我要修改,web管理界面的端口

修改配配置文件

vim /etc/rabbitmq/rabbitmq.config


添加以下

{rabbitmq_management,
[%% Pre-Load schema definitions from the following JSON file. See
%% http://www.rabbitmq.com/management.html#load-definitions %%
%% {load_definitions, "/path/to/schema.json"},

%% Log all requests to the management HTTP API to a file.
%%
%% {http_log_dir, "/path/to/access.log"},

%% Change the port on which the HTTP listener listens,
%% specifying an interface for the web server to bind to.
%% Also set the listener to use SSL and provide SSL options.
%%
%% {listener, [{port,     12345},
%%             {ip,       "127.0.0.1"},
%%             {ssl,      true},
%%             {ssl_opts, [{cacertfile, "/path/to/cacert.pem"},
%%                         {certfile,   "/path/to/cert.pem"},
%%                         {keyfile,    "/path/to/key.pem"}]}]},

%% Configure how long aggregated data (such as message rates and queue
%% lengths) is retained. Please read the plugin's documentation in
%% https://www.rabbitmq.com/management.html#configuration for more
%% details.
%%
%% {sample_retention_policies,
%%  [{global,   [{60, 5}, {3600, 60}, {86400, 1200}]},
%%   {basic,    [{60, 5}, {3600, 60}]},
%%   {detailed, [{10, 5}]}]}
{listener, [{port,     8080},
{ip,       "0.0.0.0"},
{ssl,     false}
]}
]},


改为80端口,一串注释不用理他,只要管{listen就行了,开8080端口就行

用php -m查看一下
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  php 扩展 yum