如何在Windows上安装amqp

时间:2012-12-11 09:58:27

标签: php rabbitmq pear amqp pecl

我在安装pecl/amqp

时遇到此错误

当我输入命令行时:pear install pecl/amqp

  

警告:php_bin C:\ xampp \ php。\ php.exe似乎有一个后缀。\ php.exe,

  

配置变量php_suffix不匹配
    错误:DSP amqp.dsp不存在。

我需要安装它才能在php上使用amqp(RabbitMQ)。

5 个答案:

答案 0 :(得分:4)

@ AMQP installation php.net

  

对Windows用户的注意:此扩展目前不支持Windows,因为librabbitmq库尚不支持Windows。

但是here at RabbitMQ website是一个Windows安装程序......

显然 php.net 页面过时了


安装如下:

  1. this official PECL amqp 1.4.0 page
  2. 下载适用于您的php的正确软件包
  3. 解压
  4. amqp.dll添加到您的php ext文件夹
  5. rabbitmq.1.dll添加到您的Windows系统32文件夹中。
  6. 根据博客上的帖子,我发现here

答案 1 :(得分:3)

在Windows 10上,构建64位的19041(2004更新)。

在PHP 7.4.8中使用Xampp。

  1. 转到此处下载相关版本:https://pecl.php.net/package/amqp(使用php -v在CLI中检查您需要的版本)
  2. .zip,将rabbitmq.#.dll复制到C:/Windows/System32
  3. .zip,将php_amqp.dll复制到C:/xampp/php/ext(如果使用Xampp以外的其他文件,则复制到php/ext文件夹中)

如果您已将PHP作为服务与Apache一起运行,请重新启动Apache。如果您通过CLI(例如,通过Bash和/或Symfony CLI服务器)使用它,那么您已经可以使用了。


其他帖子提到了64位变体,其中rabbitmq.#.dll中包含#(其中C:/Windows/SysWOW64是版本)。我试过了,即使运行64位Windows和PHP,也没用。

$ php -v
PHP 7.4.8 (cli) (built: Jul  9 2020 11:30:39) ( ZTS Visual C++ 2017 x64 )
Copyright (c) The PHP Group
Zend Engine v3.4.0, Copyright (c) Zend Technologies

答案 2 :(得分:1)

虽然这不会回答如何使用pear install pecl / amqp安装RabbitMQ,但你有没有尝试过使用带有纯php实现的php-amqplib的Rabbitmq?

答案 3 :(得分:0)

这适用于PHP 7.1和Windows的amqp 1.9.4。

  • 根据您的PHP版本,体系结构,线程安全性和编译器,在https://pecl.php.net/package/amqp中下载正确的软件包。您可以在phpinfo中检查它
  • 将php_amqp.dll复制到您的php ext文件夹中
  • 使用以下文件更新您的php.ini:extension = php_amqp.dll
  • 如果使用32位系统,请将rabbitmq.4.dll复制到Windows系统32文件夹。如果使用64位系统,请将其添加到SysWOW64。
  • 重新启动Apache。

答案 4 :(得分:0)

经过数小时的搜索:要将 amqp 安装到 php7.4 和 Windows 10 (https://pecl.php.net/package/amqp),

  1. 选择好的文件(x86、x64、ts、nts)
    php -i 或 phpinfo()(架构 => x64)
    php -i|findstr "Thread" (ts 或 nts 启用)


  2. rabbitmq.4.dll 和 rabbitmq.4.pdb 文件复制到 PHP 根文件夹
    php_amqp.dll 和 php_amqp.pdb 文件到 PHP\ext 文件夹

  3. 在 php.ini 文件中添加 extension=amqp

  4. 检查 php -m 是否显示 amqp(php -v 显示错误)

非常感谢 Rezende (tutorial)