YII配置rabbitMQ时前期工作各种坑

背景如下:

项目需要做一个订阅/发布的功能,然后一大堆讨论不做说明,确认使用rabbitMQ来做;

okay,既然 要这个来做,我们下载这个东西吧!在官网上下载就okay了,不做说明,下载安装的时候会提示你下载erlang语言,下就是了,不管;

要知道rabbitMQ是服务器,所以就想进入页面了,相信英文不好的同学,就回去百度啊,谷歌啊,然后有了在浏览器中输入localhost:15672,然后发现根本打不开,然后又继续百度,各种坑,

然后推荐方法:在安装的rabbitmq的sbin目录下去,在终端输入进入sbin目录

输入:rabbitmqctl start_app

rabbitmq-plugins enable rabbitmq_management

然后重启一下rabbitmq服务器就okay;

好了rabbitmq弄好了,现在要使用他了

开发环境说明wamp集成的,使用yii开发

1,首先既然是yii,那就使用composer安装依赖包了,然后百度啊,得到这个

php composer.phar require php-amqplib/php-amqplib “2.6.*”

义试over,报错,坑死人啊对新手来说,好不容易写个博客然后被人骂死,说正事,去掉引号就可以了

php composer.phar require php-amqplib/php-amqplib  2.6.*

好了,然后看到可以了,就等啊等啊,然后等到一个报错,然后又试,然后又报错,无语了,就去百度啊谷歌啊,各种解决办法,各种行不通,各种坑,这里最后发现还是看到一个最初的中国镜像,好吧直接说吧

https://pkg.phpcomposer.com/ 贴上网站

其实就是在composer.json中添加这么一句话就okay了

"repositories": {
            "packagist": {
                    "type": "composer",
                 "url": "https://packagist.phpcomposer.com"
            }
    }

具体可以参考中国镜像。

然后发现还是用不了,需要安装扩展,什么dll文件什么的,在网上百度说什么下载这个那个,比如说给你一个什么文件你下载了,然后在php.ini文件里面配置了,然后echo phpinfo(); 就是看不到他们截图给你的amqp,好烦哦;

然后发现原来是Apache也要个dll,然后又配置啊 ,发现启动的时候就报错,然后还是没有预期的amqp,一大堆坑货写的博客,真的是照搬,坑货啊

好了发了这么多牢骚,其实就这样配置,

首先一定要确认你的php版本,一定要确认,扩展不是随便下个最新的就好了,我的版本是5.5.12的,所以认准5.5开头的,

输入,http://pecl.php.net/package/amqp

根据需求下载,我下载了1.4.0的,然后往下拉,在对应的PHP版本下看到有ts和nts的,这个怎么选,一个一个试吧,也不是不可以,反正你闲的,其实可以在你安装的php中看到你那里有个php5ts.dll,那就下ts的,反之下nts的

下好了你会看到一个包,里面有php_amqp.dll和rabbitmq.1.dll

首先把php_amqp.dll放到php中的ext文件夹中,然后在php.ini文件中加入这个扩展,extension=php_amqp.dll配置就好了,

然后rabbitmq.1.dll放到php文件夹中,就是php.exe同一个目录下,然后在Apache中的配置文件httpd.conf中添加一段代码LoadFile "D:/wamp/bin/php/php5.5.12/rabbitmq.1.dll" 就是LoadFile "rabbitmq.1.dll的路径"

记得斜杠要换一下,放在哪个位置  你搜索<IfModule unixd_module>这个  放到他前面,okay了

全部好了  重启一下wamp,然后输出phpinfo(),就有了你要看到的amqp

搞定收工,吃饭去了!!!!!

原文地址:https://www.cnblogs.com/jianyeLee/p/7089157.html