You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Windows Server2019下PHP7.4开启curl扩展仍报curl_init()未定义错误如何解决

故障排查与解决步骤

  • 第一步:确认你修改的是Apache加载的正确php.ini文件
    打开phpinfo页面,找到Loaded Configuration File对应的路径,只有修改这个路径下的php.ini才会生效,不少用户会误改PHP CLI对应的ini文件导致配置不生效。
  • 第二步:校验extension_dir配置是否正确
    检查php.ini里的extension_dir参数,必须填写php_curl.dll所在ext目录的绝对路径,例如:
    extension_dir = "C:/php7.4/ext"
    
    不要使用相对路径,Apache加载时相对路径容易出现解析错误。
  • 第三步:确认文件版本匹配与依赖完整
    1. 你使用的php_curl.dll必须和PHP的版本、线程安全属性、系统架构(x86/x64)完全一致,不要使用其他版本PHP的dll文件
    2. 检查PHP根目录下是否存在curl依赖的libcurl.dll、libssh2.dll、nghttp2.dll等文件,PHP7.4版本需要安装VC15运行库,缺失的话会导致dll加载失败
  • 第四步:配置系统环境变量
    把PHP根目录的绝对路径添加到Windows系统的PATH环境变量中,添加完成后重启整个服务器,避免环境变量不生效。Apache启动时需要读取PHP根目录下的依赖库,不配置PATH会找不到对应文件。
  • 第五步:校验Apache的PHP配置
    检查Apache的httpd.conf配置文件,确认PHPIniDir参数指向的是你当前PHP版本的根目录,示例配置:
    PHPIniDir "C:/php7.4"
    
    配置错误会导致Apache读取错误的php.ini文件。
  • 进阶排查:查看错误日志定位问题
    如果以上步骤都操作后仍然无法加载,可以查看Apache的错误日志,启动服务时如果curl扩展加载失败,日志中会打印明确的报错原因(比如缺失依赖、权限不足、dll版本不匹配等),可以直接定位问题。

内容的提问来源于stack exchange,提问作者John Beasley

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.12 00:03:03