自己鼓捣了一晚上总算整明白了,有几个坑分享给小伙伴,希望能帮到你

前期准备 安装erlang

下载rpm包地址:https://github.com/rabbitmq/erlang-rpm (注意erlang版本 我下的rabbitmq版本是3.74需要erlang版本>=19.3) 

百度链接:https://pan.baidu.com/s/1KXeDKliMtOo0EHVgfKc1nA 密码:icnf

遇到了点坑:之前是yum和源码便宜安装erlang都失败导致在安装上面的rpm包时一直不成功,可以执行rpm -qa | grep erlang来查看安装了哪些包,然后执行yum remove 包名卸载即可

1.安装rabbitmq-server 服务篇

下载rabbitmq rpm包地址:http://www.rabbitmq.com/download.html 百度盘链接:https://pan.baidu.com/s/1Q6KKSuBmEW-fPz1-BvCD4w 密码:m1dy

根据你自己的情况,选择版本下载

开始安装

yum install rabbitmq-server-3.7.-.el7.noarch.rpm

进入安装目录

./rabbitmq-server #即可开启服务

#有些时候会报这样的错误ERROR: node with name "rabbit" already running
ps -aux | grep erl
kill掉rabbitmq相关进程就好了
#开启远程访问 执行
./rabbitmq-plugins enable rabbitmq_management

开启守护进程链接:http://www.fidding.me/article/67

2.安装rabbitmq-c

要安装amqp之前需要先安装rabbitmq-c扩展

下载地址:https://github.com/alanxz/rabbitmq-c/releases 百度盘链接:https://pan.baidu.com/s/1znRBtJydza93Ms4Kg2sRFQ 密码:f60y

tar -zxvf rabbitmq-c-0.8..tar.gz
cd rabbitmq-c-0.8.

#这一步是在rabbitmq-c的根目录下创建一个build子目录
mkdir build && cd build # 这一步是让cmake根据../CMakeList.txt,即rabbitmq-c的根目录下的CMakeList.txt创建Makefile文件
# Makefile文件会被创建到build目录中
cmake -DCMAKE_INSTALL_PREFIX=/usr/local/rabbitmq-c .. # 这一步是真正的build rabbitmq-c库的,注意,不要漏掉点 '.'
cmake --build . --target install 如果找不到cmake命令 就先安装cmake
yum install camke

到这里就已经安装完成了。不过这里有一个坑。你可以看一下/usr/local/rabbitmq-c下的目录只有includelib64。因为后面编译安装amqp扩展的时候系统会到/usr/local/rabbitmq-c/lib目录下搜索依赖库,导致错误。所以这里需要加一步:(这里引用了https://segmentfault.com/a/1190000012348103)

ln -s lib64 lib

3.安装amqp扩展

去pecl下载amqp包 地址:http://pecl.php.net/package/amqp 百度盘链接:https://pan.baidu.com/s/1A7KDZ42lONFzaTFyCskxaQ 密码:sz9z

解压进入目录

没有configure文件 需要先执行

phpize(没有全局 就写绝对路径)

./configure --with-php-config=/usr/local/php/bin/php-config --with-amqp --with-librabbitmq-dir=/usr/local/rabbitmq-c
make && make install

修改php.ini文件

vi /usr/local/php/etc/php.ini
添加 extension=amqp.so

遇到的坑:

1.

rabbitmq从3.3.0开始禁止使用guest/guest权限通过除localhost外的访问

解决办法:

如果想使用guest/guest通过远程机器访问,需要在rabbitmq配置文件中(找到/rabbitmq_server-3.6.14/ebin下面的rabbit.app文件)中设置 

{loopback_users, [<<"guest">>]},
改为
{loopback_users, []},

然后重启 
systemctl restart rabbitmq-server

2. 启动服务时可能会报这样的错误

# /sbin/systemctl start rabbitmq-server
Starting rabbitmq-server (via systemctl): Job for rabbitmq-server.service failed because the control process exited with error code. See "systemctl status rabbitmq-server.service" and "journalctl -xe" for details.

解决办法:参考地址http://stackoverflow.com/questions/8633882/rabbitmq-on-ubuntu-10-04-server

# vi /etc/rabbitmq/rabbitmq-env.conf  

NODENAME=rabbit@localhost 

rabbitmq默认是没有rabbitmq.config(参考http://www.rabbitmq.com/configure.html#config-items) 和 rabbitmq-env.conf(参考http://www.rabbitmq.com/configure.html#define-environment-variables)文件的 需要自行创建

centos7 安装rabbitmq rabbitmq-c以及amqp扩展 详细篇的更多相关文章

  1. Centos7 安装 erlang rabbitmq

    1.安装Erlang依赖采用官网的rpm包的形式进行安装,不采用yum(由系统进行自动安装 可能因为版本低的问题而出现一系列问题) erlang依赖 rpm包下载地址https://github.co ...

  2. Centos7 安装配置 Rabbitmq Cluster

    Rabbitmq介绍 RabbitMQ是由 LShift 提供的一个 Advanced Message Queuing Protocol (AMQP) 的开源实现,由以高性能.健壮以及可伸缩性出名的 ...

  3. Centos7安装部署Rabbitmq教程

    依赖关系: 版本依赖一定要提前看清楚. RabbitMQ相关版本依赖关系查看 https://www.rabbitmq.com/which-erlang.html 可以看到要求版本Erlang21.3 ...

  4. centos7 安装erlang rabbitMQ

    环境: 虚拟机 centos7 minimal 一.安装Erlang 1.安装依赖 yum install build-essential openssl openssl-devel unixODBC ...

  5. CentOS7安装搭建.Net Core 2.0环境-详细步骤

    一.构建.Net core 2的应用程web发布 因为是用来测试centos上的core 环境,先直接用vs17自带的core实例. 二.部署CentOS7的core环境 1.连接并启动之前安装的虚拟 ...

  6. centos7.6编译安装php7.2.11及redis/memcached/rabbitmq/openssl/curl等常见扩展

    centos7.6编译安装php7..11及redis/memcached/rabbitmq/openssl/curl等常见扩展 获取Php的编译参数方法: [root@eus-api-cms-bac ...

  7. (五)RabbitMQ消息队列-安装amqp扩展并订阅/发布Demo(PHP版)

    原文:(五)RabbitMQ消息队列-安装amqp扩展并订阅/发布Demo(PHP版) 本文将介绍在PHP中如何使用RabbitMQ来实现消息的订阅和发布.我使用的系统依然是Centos7,为了方便, ...

  8. Centos7 手动编译 RabbitMQ ,并安装php amqp

    RabbitMQ是一个在AMQP基础上完成的,可复用的企业消息系统,底层基于Erlang语言. 一:centos7安装RabbitMQ 这玩意儿安装很扯淡,官方推荐rpm安装,rpm安装本身是最简单的 ...

  9. php的amqp扩展 安装(windows) rabbitmq学习篇

    因为RabbitMQ是由erlang语言实现的,所以先要安装erlang环境erlang 下载安装 http://www.erlang.org/download.htmlrabbitmq 下载安装 h ...

随机推荐

  1. MarkdownPad - win10环境下无法渲染HTML问题

    问题 在win10平台安装了MarkdownPad 2之后,发现在渲染md文件时报错,在预览页面无法正常渲染HTML: 安装报错提示前往官网,可以看到如下的解决方法: LivePreview is n ...

  2. DRF教程4-视图集和路由类

    rest框架包括一个处理viewset的抽象,允许开发人员集中精力处理api交互和建模,url构造都根据常见方式自动处理. ViewSet类 几乎和VIew类一样,不过它提供read,update这样 ...

  3. 解决 openSUSE 中 Sublime Text 3 的中文显示和输入问题

    测试环境 系统版本:openSUSE Leap 42.2 桌面环境:KDE Plasma 5输入法:fcitx-rime (中州韵) 见周围用 Windows 和 macOS 的小伙伴几乎都在用简单强 ...

  4. github添加版本号

    1.将官方的库clone下来 http://github.com/xxx.xxx.git 2.修改要修改的地方 3.git add src 4.commit -m 'xxx'   5.git push ...

  5. asp.net调试技巧

    一眨眼的功夫,自己已经学习asp.net的有一年的功夫了.虽然称不上什么大神,但是也有一点知识的积累.就写一片调试的入门文章给那些刚刚入门迷茫的童鞋们.希望你学习了我这篇文章能从迷茫的生活中找回编程的 ...

  6. winfrom项目的打印

    自己可以下一个PDF打印机(例如下载64位office虚拟打印文档) 首先要添加控件 1.添加打印的选项卡,并命名为打印 2.点击打印选项卡,右击鼠标,选择选择项 using System;using ...

  7. 前端之css(宽高)设置小技巧

    一.css宽高自适应: 1.宽度自适应: 元素宽度设为100%(块状元素的默认宽度为100%) 注:应用在通栏效果中 2.高度自适应: height:auto;或者不设置高度 3.最小,最大高度,最小 ...

  8. js对象引用的注意

    var p = {}; var arr = []; function a(param) { // var i = param.a; for (var i = 0; i < 3; i++) { p ...

  9. 洛谷 P2253 好一个一中腰鼓!

    题目背景 话说我大一中的运动会就要来了,据本班同学剧透(其实早就知道了),我萌萌的初二年将要表演腰鼓[喷],这个无厘头的题目便由此而来. Ivan乱入:“忽一人大呼:‘好一个安塞腰鼓!’满座寂然,无敢 ...

  10. VMware网络适配器设置

    VMware网络连接主要有三种方式,分别是桥接,NAT和Host-only. 桥接:直接使用的是真实机的物理网卡(有线网卡,无线网卡),会占用局域网中的一个IP,因此在设置虚拟机IP时要避免与同网段的 ...