您必须启用openssl扩展才能通过https下载文件

我想安装Zend Framework 2.所以我下载了框架应用程序。 正如在ZF2手册中提到的,我们必须发出命令

php composer.phar install 

在骨架里面。

但是我得到一个错误

您必须启用openssl扩展才能通过https下载文件

然后我启用了SSL中的ssl_module,我检查了php_ini文件,我可以看到下面一行

延长= php_openssl.dll

还是我得到了同样的错误。 任何人有任何线索我错过了什么?

PHP CLI SAPI使用与CGI或Apache模块不同的php.ini

wamp/bin/php/php#.#.##/php.inifindline ;extension=php_openssl.dll ,并通过从行首删除分号( ; )来取消注释。

确认您正在编辑正确的php.ini文件。

参考: https : //github.com/composer/composer/issues/1440

“WAMP在CLI和Apache中使用不同的php.ini文件,当你通过WAMP UI启用php_openssl时,你启用了Apache而不是CLI,你需要修改C:\ wamp \ bin \ php \ php- XYZ \ php.ini为CLI启用它。“

确保你有正确的path到扩展文件夹

extension_dir =“ext”

默认情况下它被评论; 字符

在玩Zend Framework 2和作曲者时,我也遇到了同样的问题。 我正在使用PHP 5.4(通过macports安装),我的解决scheme是通过macports为PHP 5.4安装openssl。

 sudo port安装php54-openssl

我使用XAMPP。 在C:\ xampp \ php \ php.ini中,openssl的条目不存在,所以我在989行添加了“extension = php_openssl.dll”,而composer工作。

你需要在这两个文件(php和apache)中启用“extension = php_openssl.dll”。 我的电脑文件path是这些:

  1. C:\ WAMP \ BIN \ PHP \ php5.3.13 \ php.ini中

  2. C:\ WAMP \ BIN \ apache的\ apache2.2.22 \ BIN \ php.ini中

我遇到了这个问题,但configurationopenssl(也为cli)没有帮助。

我已经更新了composer php,这解决了我的问题。

只需input:

 $ php composer.phar self-update 

要么

 $ composer selfupdate 

祝你好运!

Uttam,如果你的问题没有解决,那就试试下面的3步法。 它为我工作,因为我有完全相同的问题。

step1:点击wamp托盘图标。

第二步:转到菜单apache-> apache模块

第三步:点击菜单项“ssl_module”

它会自动重启wamp。 如果wamp没有自动重新启动,那么通过wamp托盘菜单 – >重新启动所有服务来重新启动它。 重新启动后,确认“ssl_module”在菜单apache-> apache模块下打勾

之后,只是尝试php composer.phar安装通过您的共享响应,php.ini文件包含扩展名= php_openssl.dll和PHP / EXT目录也有文件“php_openssl.dll”

祝你好运

瓦列里的答案帮助我: https : //stackoverflow.com/a/14265815/492457

WAMP在CLI和Apache中使用不同的php.ini文件。 当通过WAMP用户界面启用php_openssl时,您可以为Apache启用它,而不是CLI。 您需要修改C:\ wamp \ bin \ php \ php-5.4.3 \ php.ini以在CLI中启用它。

确保你更新你的php.iniCLI 。 对于我的情况这是C:\wamp\bin\php\php5.4.3\php.ini和取消注释extension=php_openssl.dll行。

迟到的答案,但添加这样的其他可以学习的原因。

您还需要在“wamp \ bin \ php \ php-XYZ”位置编辑php.ini文件。