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

Utt*_*tta 123 php ssl openssl zend-framework2 composer-php

我想安装Zend Framework 2.所以我下载了骨架应用程序.如ZF2手册中所述,我们必须发出命令

php composer.phar install 
Run Code Online (Sandbox Code Playgroud)

在骨架里面.

但是我收到了一个错误

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

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

延长= php_openssl.dll

我仍然得到同样的错误.有谁知道我错过了什么?

小智 285

PHP CLI SAPI使用的不同于php.iniCGI或Apache模块.

查找线路;extension=php_openssl.dllwamp/bin/php/php#.#.##/php.ini ,并通过移除分号(取消注释;从行的开头).

  • 那就是它,也适用于xampp! (9认同)

Dur*_*mba 36

验证您正在编辑正确的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启用它."

  • 谁会想到......真的...这解决了这个问题.谢谢 (2认同)

小智 20

确保您有正确的扩展文件夹路径

extension_dir ="ext"

默认情况下,它被注释; 字符


小智 9

在玩Zend Framework 2和作曲家时,我也有同样的问题.我正在使用PHP 5.4(通过macports安装),我的解决方案是通过macports为PHP 5.4安装openssl.

sudo port install php54-openssl


Ath*_*lan 5

我已经遇到了这个问题,但是配置openssl(也用于cli)并没有帮助。

我已经更新了作曲家,这解决了我的问题。

只需输入:

$ php composer.phar self-update
Run Code Online (Sandbox Code Playgroud)

要么

$ composer selfupdate
Run Code Online (Sandbox Code Playgroud)

祝好运!


And*_*per 5

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