安装Composer for Windows – 无法find包装“https”

我正在尝试使用以下调用命令行安装Composer for Windows

php -r“readfile( https://getcomposer.org/installer );” | PHP

但是,我收到此错误消息:

警告:readfile():无法find包装“https” – 你忘记configurationPHP时启用它? 在第1行的命令行代码中

调用堆栈:0.0010 224336 1. {main}()命令行代码:0 0.0010 224488 2. readfile()命令行代码:1

警告:readfile( https://getcomposer.org/installer ):未能打开stream:第1行上的命令行代码中的无效参数

调用堆栈:0.0010 224336 1. {main}()命令行代码:0 0.0010 224488 2. readfile()命令行代码:1

我已经取消了php5.5.12目录中的“; extension = php_openssl.dll”这一行,重新启动了浏览器,并尝试了其他变体。 当我用https中的's'运行命令时,我得到:

机器上的某些设置使Composer无法正常工作。 确保您修复了下面列出的问题并再次运行此脚本:

openssl扩展名缺失,这意味着安全的HTTPS传输是不可能的。 如果可能,你应该启用它或用–with-openssl重新编译php

我已经尝试在各个地方包括这个–with-openssl标志,但它似乎并没有做到这一点。

Solutions Collecting From Web of "安装Composer for Windows – 无法find包装“https”"

那么,由于解决方案似乎不管你为什么,你可以观察到,所有这个命令正在做的是下载文件,并打印到另一个php进程。 这是一个相当简单的问题,可以通过适当的调整来解决问题。

例如,你可以删除https并使用http

 php -r "readfile(http://getcomposer.org/installer);" | php -- --disable-tls 

或者让其他工具取出这个文件,比如:

 wget -s -O - "https://getcomposer.org/installer" | php -- --disable-tls 

甚至:

 curl -sSk "https://getcomposer.org/installer" | php -- --disable-tls 

选项--disable-tlsinstaller脚本相关,它会告诉它在installer过程中将使用http而不是https进行下载。

它使用Havenard的答案。 只需添加“..”来包含网址

 php -r "readfile('http://getcomposer.org/installer');" | php -- --disable-tls 

这听起来像你的安装没有启用openssl。

找到您的php.ini文件(在Windows上,这可能与php.exe (我的机器上的c:\php )位于同一位置)。

在你最喜欢的编辑器中打开它,并找到线

 ;extension=php_openssl.dll 

删除分号

 extension=php_openssl.dll 

HTTPS现在应该从你的内部工作。