处理“缺少 openssl 扩展:在 XAMPP 中
Posted
技术标签:
【中文标题】处理“缺少 openssl 扩展:在 XAMPP 中【英文标题】:Handling "The openssl extension is missing: in XAMPP 【发布时间】:2014-09-08 20:23:41 【问题描述】:我尝试在我的 PC 上安装 composer(Windows 8 Pro 64x 和 XAMPP 3.2.1),所以我下载了 Windows Installer 并运行它 但是我收到了这个错误:
缺少 openssl 扩展,这意味着不可能进行安全的 HTTPS 传输。
我搜索了这个问题并尝试了一些解决方案
extension=php_openssl.dll
在 C:\xampp\php\php.ini 中的 php.ini 文件中取消注释,并且我的系统上没有其他 php.ini 文件(我搜索过)
当我在 CMD 中运行“php --ini”命令时,我得到了这个:
配置文件(php.ini)路径:C:\windows
加载的配置文件:(无)
扫描其他 .ini 文件:(无)
解析的其他 .ini 文件:(无)
如果有帮助的话。
我希望有人帮助我。天呐
【问题讨论】:
既然php说是在c:\windows里找.ini文件,那你在c:\xampp里编辑的那个基本没用了。 但是 c:\windows 中没有 php.ini 文件。有没有办法改变它或将 XAPMM php.ini 文件添加到“加载的配置文件”? 没错,所以 php 使用编译的默认值运行。 那么有什么办法可以改变它或将 C:\xampp\php\php.ini 文件添加到“加载的配置文件”中? 从未使用过 xampp。不知道为什么它会在 c:\windows 中查找,这是 php 存储其配置的一个非常愚蠢的地方。如今,除了微软和驱动程序编写者之外,c:\windows 应该对任何人都不干涉。 【参考方案1】:这里,php --ini
命令指向C:\windows
路径,你应该更改该路径中的文件(但考虑复制原始文件以防出错)。毕竟,您可以将 php.ini 的副本放在所需位置并强制 php
使用它:
php -c /path/to/my/custom/php.ini
【讨论】:
【参考方案2】:";extension=php_openssl.dll" 在 php.ini 文件中被注释掉。只需删除评论,保存文件,重新运行 Composer 安装。
【讨论】:
【参考方案3】:自上周以来,我一直在与同样的问题作斗争,但今天能够解决它。首先,我在 Windows 10 上使用 XAMPP,所以只要你的 PC 上运行了 XAMPP,你就在家。
(您可以运行 phpinfo.php 以了解您的设置(您可以使用该名称创建一个简单的脚本文件,检查 extension_path。它应该指向“php\ext”文件夹(这是我的文件夹))我设置php.ini 中到 c:\xampp\php\ext 的路径。您可以从 XAMPP 控制面板通过单击与 APACHE Web 服务器相对应的 CONFIGURE 按钮来访问此文件,然后从弹出列表中选择“php.ini”。搜索 extension_path 并删除注释指令 (';')。
记得从 XAMPP 控制面板停止并重新启动 Apache Web 服务器。
这就是我所做的一切,我的 php 代码与上面的没有太大区别。试试这个,让我知道你的情况。
【讨论】:
【参考方案4】:C:\xampp\php\php.ini
是正确的配置文件。编辑它,然后确保重新启动 Apache 服务以使更改生效。
【讨论】:
我之前试过这个,但没用,最后我把我的 php.ini 文件的副本放在 C:\windows 中,它工作了,但看起来很脏 无论如何。phpinfo()
应该告诉你配置是从哪里加载的。【参考方案5】:
即使我在我的 PC 中安装 composer 时也遇到了这个错误,试试这个:
1- 打开 C:\php\php.ini
2- 找到 ;extension=openssl 并删除 ; ,保存
3- 现在转到
C:\xampp\php\ext
4- 复制所有文件
5- 现在转到
C:\php\ext
6- 粘贴这些文件
立即尝试 :) 如果我做错了什么请告诉我
【讨论】:
Open C:\php\php.ini ....
是否应该包含在您的步骤中?如果是这样,您可以修改此答案以包含该步骤。以上是关于处理“缺少 openssl 扩展:在 XAMPP 中的主要内容,如果未能解决你的问题,请参考以下文章
HttpApplication处理对象与HttpModule处理模块