我想安装Zend Framework 2.所以我下载了骨架应用程序 . 如ZF2手册中所述,我们必须发出命令
php composer.phar install
在骨架里面 .
但是我收到了一个错误
您必须启用openssl扩展才能通过https下载文件
然后我在我的wamp中启用了ssl_module,我检查了php_ini文件,我可以看到以下行
extension = php_openssl.dll
我仍然得到同样的错误 . 有谁知道我错过了什么?
PHP CLI SAPI使用与CGI或Apache模块不同的 php.ini .
php.ini
在 wamp/bin/php/php#.#.##/php.ini 中找到 ;extension=php_openssl.dll 行,并通过从行的开头删除分号( ; )取消注释 .
wamp/bin/php/php#.#.##/php.ini
;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启用它 . “
确保您有正确的扩展文件夹路径
extension_dir =“ext”
默认情况下,它被注释;字符
在玩Zend Framework 2和作曲家时,我也有同样的问题 . 我正在使用PHP 5.4(通过macports安装),我的解决方案是通过macports为PHP 5.4安装openssl .
sudo port install php54-openssl
我用XAMPP . 在C:\ xampp \ php \ php.ini中,openssl的条目不存在,所以我在989行添加了“extension = php_openssl.dll”,并且作曲家工作了 .
您需要在两个文件(php和apache)中启用“extension = php_openssl.dll” . 我的pc文件路径是这些:
C:\ wamp \ bin \ php \ php5.3.13 \ php.ini
C:\ wamp \ bin \ apache \ apache2.2.22 \ bin \ php.ini
我遇到过这个问题,但配置openssl(也适用于cli)并没有帮助 .
I have updated composer and this sloved my problem.
只需输入:
$ php composer.phar self-update
要么
$ composer selfupdate
祝好运!
Uttam,如果你的问题没有解决,那么试试下面的3步法 . 它对我有用,因为我有完全相同的问题 .
step1:点击wamp tray图标 .
step2:转到菜单apache-> apache模块
step3:点击菜单项“ssl_module”
它会自动重启wamp . 如果wamp没有自动重启,则通过wamp tray菜单重新启动它 - >重启所有服务 . 重新启动后确认“ssl_module”在菜单apache-> apache模块下打勾
之后只是尝试php composer.phar安装从你共享的响应,php.ini文件包含extension = php_openssl.dll和php / ext目录也有文件“php_openssl.dll”
祝好运
瓦列里的回答帮助了我:https://stackoverflow.com/a/14265815/492457
WAMP在CLI和Apache中使用不同的php.ini文件 . 当您通过WAMP UI启用php_openssl时,您为Apache启用它,而不是为CLI启用它 . 您需要修改C:\ wamp \ bin \ php \ php-5.4.3 \ php.ini以启用它 .
请确保为 CLI 更新 php.ini . 对于我的情况,这是 C:\wamp\bin\php\php5.4.3\php.ini 并取消注释 extension=php_openssl.dll 行 .
CLI
C:\wamp\bin\php\php5.4.3\php.ini
extension=php_openssl.dll
迟到的答案,但添加其他可以了解原因 .
您还需要在“wamp \ bin \ php \ php-X.Y.Z”位置编辑php.ini文件 .
11 回答
PHP CLI SAPI使用与CGI或Apache模块不同的
php.ini
.在
wamp/bin/php/php#.#.##/php.ini
中找到;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启用它 . “
确保您有正确的扩展文件夹路径
默认情况下,它被注释;字符
在玩Zend Framework 2和作曲家时,我也有同样的问题 . 我正在使用PHP 5.4(通过macports安装),我的解决方案是通过macports为PHP 5.4安装openssl .
我用XAMPP . 在C:\ xampp \ php \ php.ini中,openssl的条目不存在,所以我在989行添加了“extension = php_openssl.dll”,并且作曲家工作了 .
您需要在两个文件(php和apache)中启用“extension = php_openssl.dll” . 我的pc文件路径是这些:
C:\ wamp \ bin \ php \ php5.3.13 \ php.ini
C:\ wamp \ bin \ apache \ apache2.2.22 \ bin \ php.ini
我遇到过这个问题,但配置openssl(也适用于cli)并没有帮助 .
I have updated composer and this sloved my problem.
只需输入:
要么
祝好运!
Uttam,如果你的问题没有解决,那么试试下面的3步法 . 它对我有用,因为我有完全相同的问题 .
step1:点击wamp tray图标 .
step2:转到菜单apache-> apache模块
step3:点击菜单项“ssl_module”
它会自动重启wamp . 如果wamp没有自动重启,则通过wamp tray菜单重新启动它 - >重启所有服务 . 重新启动后确认“ssl_module”在菜单apache-> apache模块下打勾
之后只是尝试php composer.phar安装从你共享的响应,php.ini文件包含extension = php_openssl.dll和php / ext目录也有文件“php_openssl.dll”
祝好运
瓦列里的回答帮助了我:https://stackoverflow.com/a/14265815/492457
请确保为
CLI
更新php.ini
. 对于我的情况,这是C:\wamp\bin\php\php5.4.3\php.ini
并取消注释extension=php_openssl.dll
行 .迟到的答案,但添加其他可以了解原因 .
您还需要在“wamp \ bin \ php \ php-X.Y.Z”位置编辑php.ini文件 .