在PHP7中OpenSSL扩展开启失败该怎样做好
Admin 2022-08-19 群英技术资讯 567 次浏览
最近学习Laravel框架,需要开启PHP的OpenSSL扩展,试了网上的许多方法都不行,最后搞了很久,终于成功,现将经历写下,以便总结。
以下为本人失败的经历:
最开始使用网上说的最多的方法:
1、首先检查php.ini中extension=php_openssl.dll是否存在,如果存在的话去掉前面的注释符“;”, 如果不存在这行,那么添加extension=php_openssl.dll;
2、将PHP目录下的:php_openssl.dll(该文件在ext文件夹), ssleay32.dll, libeay32.dll 3个文件拷贝到 windows\system32\文件夹下;
3、重启apache;
至此,openssl功能就开启了。
很显然,我没有成功,继续找方法,
之后在知乎上看到有人遇到同样的问题,后来解决了,还说了方法,我就也试了一下,方法如下图:
题主说了仅限win7,我的是win10,不过还是试了一下,万一成功了呢
很显然,依然没有成功,继续找方法,
之后又试了几个方法,依然没有成功,然后就想着用别人的电脑试一下,于是就用了小伙伴的电脑试了一次,将php.ini中extension=php_openssl.dll前面的注释去掉,三个文件也没复制,重启Apache,打开phpinfo,成功,一次成功。此时我的内心是崩溃的,我的怎么就不行啊,没办法,继续搞,最后我把两台电脑的PHP的配置文件php.ini和Apache的配置文件http.conf中有关ssl的地方一一比较,希望能找到问题。最后还真找到了一点不同,我发现我的http.conf中LoadModule ssl_module modules/mod_ssl.so是注释掉的,而他的没有注释。马上去掉注释,重启Apache,打开phpinfo,搜索OpenSSL,发现多了三条搜索记录,可是仍然没有启用。到这个时候,我已经没有方法了,就继续搜吧,功夫不负有心人,最后终于成功了。
以下为最后成功的方法:
看到一篇文章写到php5升级到php7时需要注意的一些问题,其中有这么一条:
重启Apache时,报curl和openssl的扩展库加载失败(apache的log会报错)
可将libeay32.dll和ssleay32.dll文件复制并替换到apache\bin目录下,再次启动Apache
我就又试了一下,成功,所以我的成功方法应该是去掉php.ini中openssl扩展的注释,移动以上两个文件,重启Apache。
注:两个文件往apache\bin目录复制时,最好提前备份下原目录下的这两个文件,如果覆盖出错,关闭Apache即可。
每个人的环境可能有些许不同,以上内容仅供参考。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。
猜你喜欢
php7安装mongodb扩展的方法:首先下载“mongodb-1.6.0.tgz”;然后进入“mongodb-1.6.0”;最后修改php.ini,并重启即可。
本文的中心内容如题所述,就是教大家如何实现在单击按钮时调用PHP函数,其实关于调用PHP函数有很多方法,除了通过单击按钮执行此操作之外,还可以使用 Ajax、JavaScript 和 JQuery 调用 PHP 函数。
前段时间在项目中遇到一个当时觉得比较奇怪的情况:使用 GuzzleHttp 发送 curl 请求,API 响应超时导致抛出异常。
php7期望是向后兼容的增强到旧 assert() 函数。期望允许在生产代码零成本的断言,并提供在断言失败时抛出自定义异常的能力。assert() 不是一种语言构建体,其中第一个参数是一个表达式的比较字符串或布尔用于测试。
本章开始,主要介绍 PHP 函数中的常用函数,本节首先介绍 Array 函数!一些朋友可能会遇到这方面的问题,对此在下文小编向大家来讲解一下,内容详细,易于理解,希望大家阅读完这篇能有收获哦,有需要的朋友就往下看吧!
成为群英会员,开启智能安全云计算之旅
立即注册Copyright © QY Network Company Ltd. All Rights Reserved. 2003-2020 群英 版权所有
增值电信经营许可证 : B1.B2-20140078 粤ICP备09006778号 域名注册商资质 粤 D3.1-20240008