在Windows 10和PHP 7.3中安装AMQP

时间:2019-03-03 09:03:34

标签: php windows rabbitmq amqp

我想在Windows 10中使用PHP 7.3安装AMQP以在symfony 4中使用。Windows不使用任何apache / iis / nginx,而是直接由symfony运行。

一切正常! 直到我决定在项目中使用Rabbitmq并需要amqp。

所以, 1.下载AMQP 1.9.4(与php 7.3兼容)
2.将php_amqp.dll复制到c:\ php
3.将Rabbitmq.4.dll(兼容AMQP 1.9.4)复制到c:\ windows \ system32
4.添加extension = php_amqp.dll> php.ini
5. php.ini extension_dir =“ ext”

但是我得到这个错误:

PHP Warning:
PHP Startup: Unable to load dynamic library 'php_amqp.dll'
(tried: ext\php_amqp.dll (The specified module could not be found.),
ext\php_php_amqp.dll.dll (The specified module could not be found.)) in Unknown on line 0

我尝试以下说明:
1.将php.ini extension_dir更改为“ C:\ php \ ext \”
2.安装openssl 1.1
3.将libeay32.dll,ssleay32.dll复制到“ c:\ windows \ system32”
4.重新启动,重新启动,重新启动,...

我该如何解决这个问题?

4 个答案:

答案 0 :(得分:2)

1)生成phpinfo文件,检查 -架构,即:x86 -PHP扩展版本,即:API20170718,TS,VC15 -线程安全,即:已启用

2)转到https://pecl.php.net/package/amqp根据您的PHP版本查找库的版本,并确定线程安全或不线程安全

例如此处:https://pecl.php.net/package/amqp/1.9.4/windows

3)解压缩/ tar包 将php_amqp.dll复制到php目录中的ext目录中(即c:/ xammp / php / ext)

4)编辑php.ini,添加“ extension = php_amqp.dll”

将rabbitmq.4.dll和rabbitmq.4.pdb复制到c:/ xammp / php

5)安装Win32OpenSSL(在Windows /系统目录中保存dll)

https://slproweb.com/products/Win32OpenSSL.html

答案 1 :(得分:1)

我在用 XAMPP 安装 amqp 时遇到了同样的问题(如果是这种情况) 确保您为 amqp 下载了线程安全版本 其余配置如上所示

  1. xampp/php/ext
  2. 中添加php_amqp.dll
  3. 添加 rabbit.dll windows/system32
  4. 在 php.ini 中添加 extension=php_amqp.dll

就是这样。

答案 2 :(得分:0)

尝试:

  • 将php_amqp.dll和php_amqp.pdb复制到\ php \ ext \
  • 将rabbitmq.4.dll和rabbitmq.4.pdb复制到\ php \

它不适用于PHP 7.2.13RC1,但适用于PHP 7.2.17

我正在使用Windows 10,x64,PHP非线程安全

答案 3 :(得分:0)

  1. 请务必下载兼容版本的 php amqp 库(线程保存或no9t线程安全,x86或x64)。

例如:

  

链接到Windows的所有版本:

     

AMQP   https://pecl.php.net/package/amqp/1.9.4/windows

     

PHP https://windows.php.net/download/

  1. 您需要注册dll regsvr32 c:\windows\system32\rabbitmq.4.dll (或将rabbitmq.4.dll复制到c:\php\目录)

并将php_amqp.dll移动到扩展名目录move c:\php\php_amqp.dll c:\php\ext\

相关问题