当前位置: 首页 > news >正文

关于Apache无法加载PHP 7.2 curl模块问题的解决办法

关于Apache无法加载PHP 7.2 curl模块问题的解决办法

  • 测试环境
  • 故障现象
  • 故障分析
  • 解决办法
  • 彩蛋

测试环境

	E:\Web\Apache24\bin>httpd -version
		Server version: Apache/2.4.46 (Win64)
		Server built:   Sep 23 2020 12:41:41
	E:\Web\php-7.2.33-Win32-VC15-x64>php -v
		PHP 7.2.33 (cli) (built: Aug  4 2020 11:50:49) ( ZTS MSVC15 (Visual C++ 2017) x64 )
		Copyright (c) 1997-2018 The PHP Group
		Zend Engine v3.2.0, Copyright (c) 1998-2018 Zend Technologies
		    with Xdebug v3.0.1, Copyright (c) 2002-2020, by Derick Rethans

故障现象

php.ini 里取消加载curl模块注释,却发现Apache无法正常启动了!WTF!
报错信息为

	PHP Warning:  PHP Startup: Unable to load dynamic library 'php_curl' (tried: E:\\Web\\php-7.2.33-Win32-VC15-x64\\ext\\php_curl (\xef\xbf\xbd\xd2\xb2\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xd6\xb8\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xc4\xa3\xef\xbf\xbd\xe9\xa1\xa3), E:\\PHPnow\\php-7.2.33-Win32-VC15-x64\\ext\\php_php_curl.dll (\xef\xbf\xbd\xd2\xb2\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xd6\xb8\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xc4\xa3\xef\xbf\xbd\xe9\xa1\xa3)) in Unknown on line 0

故障分析

按照正常流程,先检查extension后面的文件名对不对,然后再看extension_dir设置的对不对,然后再进入cmd执行php -m,看看文件有没有正确加载。
当发现在PHP CLI模式下可以正确引入curl模块,这就说明不是PHP设置的问题了,重点检查Apache设置。
反复检查了httpd.conf感觉没什么问题,百撕不得其姐 甚是苦恼,放狗找答案。

解决办法

复制libeay32.dllssleay32.dlllibssh2.dll三个文件至Apache\bin目录内即可!

  • libeay32.dllssleay32.dll可以从OpenSSH编译版 https://indy.fulgan.com/SSL中获取。
  • libssh2.dll来自PHP文件夹。

彩蛋

经过各种测试发现,只要将libssh2.dll复制到Apache\bin下就解决问题了。

相关文章:

  • 墙脆脆?!
  • 在群晖DS218+上编译Fluffos的Docker镜像
  • 将自己的SSH密钥对导入YubiKey 5的PIV和智能卡模块,配合Putty和XShell使用
  • 快照(Snapshot)技术发展综述
  • 国产开源硬件力作CanoKey,替代昂贵的Yubikey!
  • 在CentOS上升级OpenSSL 1.1.1k
  • firewall-cmd 常用命令
  • 俞敏洪在北京大学2008年开学典礼上的发言
  • iptables 之 REJECT 与 DROP 对比
  • Nginx捕获并自定义proxy_pass返回的错误
  • 后台传JSON,前台动态生成一个下拉框
  • PostgreSQL psql工具使用方法
  • 在后台把DataTable组织成JSON,送到前台动态填充UltraWebGrid
  • Win10以后的版本不支持文件拖动打开的解决办法
  • 阴阳历转换
  • hexo+github搭建个人博客
  • 【MySQL经典案例分析】 Waiting for table metadata lock
  • Fastjson的基本使用方法大全
  • GDB 调试 Mysql 实战(三)优先队列排序算法中的行记录长度统计是怎么来的(上)...
  • Git同步原始仓库到Fork仓库中
  • javascript 哈希表
  • Laravel5.4 Queues队列学习
  • Mac 鼠须管 Rime 输入法 安装五笔输入法 教程
  • mac修复ab及siege安装
  • maya建模与骨骼动画快速实现人工鱼
  • pdf文件如何在线转换为jpg图片
  • Spring Security中异常上抛机制及对于转型处理的一些感悟
  • webpack4 一点通
  • 给第三方使用接口的 URL 签名实现
  • 小程序上传图片到七牛云(支持多张上传,预览,删除)
  • 一起来学SpringBoot | 第十篇:使用Spring Cache集成Redis
  • ​html.parser --- 简单的 HTML 和 XHTML 解析器​
  • ​软考-高级-信息系统项目管理师教程 第四版【第23章-组织通用管理-思维导图】​
  • (175)FPGA门控时钟技术
  • (2020)Java后端开发----(面试题和笔试题)
  • (poj1.2.1)1970(筛选法模拟)
  • (附源码)spring boot基于Java的电影院售票与管理系统毕业设计 011449
  • (附源码)ssm本科教学合格评估管理系统 毕业设计 180916
  • (三十)Flask之wtforms库【剖析源码上篇】
  • (五)Python 垃圾回收机制
  • (转)Google的Objective-C编码规范
  • .NET Framework 3.5中序列化成JSON数据及JSON数据的反序列化,以及jQuery的调用JSON
  • .net FrameWork简介,数组,枚举
  • .net 托管代码与非托管代码
  • .net实现头像缩放截取功能 -----转载自accp教程网
  • .net网站发布-允许更新此预编译站点
  • .NET应用架构设计:原则、模式与实践 目录预览
  • .NET中winform传递参数至Url并获得返回值或文件
  • .stream().map与.stream().flatMap的使用
  • ??javascript里的变量问题
  • @Pointcut 使用
  • @property python知乎_Python3基础之:property
  • @基于大模型的旅游路线推荐方案
  • [ JavaScript ] JSON方法
  • [ 网络基础篇 ] MAP 迈普交换机常用命令详解