处理“缺少 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处理模块

自然语言处理_一般处理流程

怎么在批处理中加回车命令?

throws关键字_异常处理的第一种方式(交给别人处理)和try_catch_异常处理的第二种方式(自己处理)

PHP异常处理

协处理器,王明学learn