我在 Windows 7 x64
上使用 PHP 5.5.25
和 Apache 2.4
,但我无法激活 cURL 模块。我环顾四周,尝试了所有我能想到的。请协助:
- 在
php.ini
中,行extension=php_curl.dll
处于事件状态并且文件php_curl.dll
存在于扩展目录中C:\php\ext
- 在
php.ini
中设置extension_dir = ext
时,没有加载任何扩展。 Apache 启动时我收到几条消息,类似于Unable to load dynamic library
ext\php_openssl.dll- The specified module could not be found.
- 当我使用完整路径并设置
extension_dir = C:\php\ext
时,除了 cURL 之外,所有扩展都能正常加载。我收到错误:无法加载动态库
C:\php\ext\php_curl.dll- 找不到指定的模块。
- 我已尝试将扩展名重命名为
php_curl.new.dll
并调整php.ini
但我收到有关新文件名的错误消息。我还从windows.php.net
下载了 DLL 的全新副本,但这没有任何区别。 - 我已经检查了
php_curl.dll
的文件权限(右键单击文件 >> 属性 >> 安全选项卡),它们与成功加载的扩展程序的权限相同< - 我已按照对 this question 的响应指示,将
libeay32.dll
和ssleay32.dll
从 PHP bin 目录复制并粘贴到 System32 和 SysWOW64 目录中 - 我确定我正在编辑正确的
php.ini
,因为当我从ext
更改extension_dir
值时,PHP 启动错误消息发生了变化> 到C:\php\ext
就像我上面解释的那样。 - 我已确保在
php.ini
配置更改之间重新启动 Apache 服务器。 - 如果在 PHP 脚本中执行
var_dump(file_exists('C:\php\ext\php_curl.dll'));
,我得到boolean True
所以 PHP可以看到文件!
还有什么可以解释为什么未启用 cURL 模块?
最佳答案
我认为您的 PATH
中也需要 libssh2.dll
。
关于php - 为什么 PHP 拒绝在 Windows 上启用 cURL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32493498/