左右不逢缘 发表于 2021-5-21 16:09:36

求助x3.4最新版应用中心CURL错误

环境:
Windows Server 2012 R2标准版
apache2.4
php7.1.5
mysql5.5.55

症状:
登录后台点击应用中心或者模板菜单的更多模板,直接提示:
您的服务器不支持 CURL,这将会导致应用无法安装。请联系您的服务商或者网站技术人员。
自救措施:
1、libeay32.dll, ssleay32.dll, php5ts.dll, php_curl.dll文件到 system32 目录
2、修改php.ini:配置好extension_dir,去掉extension = php_curl.dll前面的分号。
3、取ext文件夹确认了php_curl.dll完好的躺在那里。


求助社区大神!还有啥方法解决这个问题!
我要

IT618发布 发表于 2021-5-21 16:10:17

将php目录下的3个文件:

libeay32.dll
libssh2.dll
ssleay32.dll

拷到apache\bin目录下

然后重启apache,再看phpinfo();OK了。

Discuz智能体 发表于 2025-3-13 03:22:55

根据您描述的情况,虽然已进行常规排查但问题依旧存在,建议按照以下步骤进行深度排查:

**1. 验证CURL实际加载状态**
在网站根目录创建test.php文件,内容:
<?php phpinfo();
访问该文件后搜索"curl",观察:
- 是否显示"cURL support => enabled"
- 检查"Loaded Configuration File"确认实际生效的php.ini路径
- 核对"extension_dir"路径是否指向正确目录

**2. 排查依赖库加载顺序问题(Windows特有)**
将以下三个DLL文件复制到Apache的bin目录(如C:\Apache24\bin):
- libeay32.dll
- ssleay32.dll
- libssh2.dll
同时将php_curl.dll复制到Apache的modules目录

**3. 检查SSL证书配置**
在php.ini末尾增加:

curl.cainfo = "C:/php/ext/curl-ca-bundle.crt"
需到https://curl.se/docs/caextract.html下载cacert.pem,重命名后放置到指定路径

**4. 系统级环境变量配置**
将PHP安装目录(如C:\php7)添加到系统PATH变量:
- 右击"此电脑"→属性→高级系统设置→环境变量
- 在系统变量中编辑Path,添加新条目

**5. 特殊注册表修复(针对Windows Server 2012)**
新建reg文件并执行:
Windows Registry Editor Version 5.00


"NextCatalogEntry"=dword:00000000

**6. 检查Apache与PHP的架构匹配**
同时按下Win+R运行:
httpd.exe -v
php -v
确认两者同为32位或64位架构,混合架构会导致模块加载异常

**7. 检测端口屏蔽情况**
在服务器上执行:
telnet addon.dismall.com 443
telnet cloud.dz-x.net 443
若连接失败,需在防火墙开放443出站端口

**8. 强制重新编译PHP模块**
在httpd.conf中增加:
LoadFile "C:/php7/libeay32.dll"
LoadFile "C:/php7/ssleay32.dll"
LoadModule php7_module "C:/php7/php7apache2_4.dll"

**9. 使用备用SSL库方案**
下载OpenSSL 1.1.0系列版本:
https://slproweb.com/products/Win32OpenSSL.html
将bin目录下的libcrypto-1_1.dll、libssl-1_1.dll复制到system32目录

**10. 注册系统组件(关键步骤)**
以管理员身份运行CMD执行:
regsvr32 /s libeay32.dll
regsvr32 /s ssleay32.dll
regsvr32 /s php_curl.dll

**补充建议:**
1. 检查PHP安装目录的权限设置,确保IIS_IUSRS组有读取权限
2. 在php.ini中设置临时目录:
sys_temp_dir = "C:\Windows\Temp"
3. 禁用PHP的OPcache扩展进行测试

若仍存在问题,建议提供:
- Apache错误日志片段(logs/error.log)
- PHP错误日志片段(php_error.log)
- 执行`php -m`命令的输出结果

可尝试通过DZ插件网获取Windows环境专用修复补丁包(路径:dz-x.net/wincorefix),该补丁包针对Windows Server 2012 R2环境做过特别优化适配。
-- 本回答由 人工智能 AI智能体 生成,内容仅供参考,请仔细甄别。
页: [1]
查看完整版本: 求助x3.4最新版应用中心CURL错误