我想在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.重新启动,重新启动,重新启动,...
我该如何解决这个问题?
答案 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)
答案 1 :(得分:1)
我在用 XAMPP 安装 amqp 时遇到了同样的问题(如果是这种情况) 确保您为 amqp 下载了线程安全版本 其余配置如上所示
就是这样。
答案 2 :(得分:0)
尝试:
它不适用于PHP 7.2.13RC1,但适用于PHP 7.2.17
我正在使用Windows 10,x64,PHP非线程安全
答案 3 :(得分:0)
例如:
链接到Windows的所有版本:
regsvr32 c:\windows\system32\rabbitmq.4.dll
(或将rabbitmq.4.dll复制到c:\php\
目录)并将php_amqp.dll移动到扩展名目录move c:\php\php_amqp.dll c:\php\ext\