天啊。我到处寻求帮助,尽我所能,现在我来这里是因为我实在是不知所措。我不确定是在这里还是在 Stackoverflow 上问这个问题,但我认为应该在这里问,因为:https://stackoverflow.com/questions/18403007/trying-to-install-composer
问题就在这里。我有一个小型的 xampp 服务器在本地运行。我正在使用一些需要安装 Composer 的 Mediawiki 扩展。最初,我特意购买了一个允许我访问 shell 的主机,这样我就可以在那里进行操作,但我的 ISP 似乎完全阻止我使用 SSH(它会超时)。为了解决这个问题,我决定尝试在本地运行一个服务器,然后在完成后传输数据库。
我首先下载了 Composer 网站上提供的 Windows 安装程序
一切都运行良好,直到真正需要下载文件时
Connection Error [ERR_CONNECTION]: Unable to connect to getcomposer.org
Request to https://getcomposer.org/installer failed with errors:
Failed to open stream: A connection attempt failed because the
connected party did not properly respond after a period of time, or
established connection failed because connected host has failed to respond.
所以我停下来做了一些研究。我偶然发现了一些帖子,解释说 xampp php.ini 中的 openssl 可能未启用。我仔细检查了一下,它确实已启用。我读到可能有多个 php.ini,一个在 php 文件夹中,一个在 apache 文件夹中,但我的版本只有一个 php.ini。
在使用自动安装程序失败后,我决定手动尝试(从这里:https://getcomposer.org/download/)。我下载了 composer.phar 文件并将其放入 php 文件夹中。我还按照说明创建了 composer.bat 文件。此时我又陷入困境,因为“composer -”或“composer --version”仍然不起作用(提示命令不存在)
我重新开始,尝试逐字逐句地按照说明操作,使用 shell 并以此方式下载,而不是手动下载。不幸的是,我又遇到了另一个错误,类似于我在安装程序中遇到的错误。
Warning: readfile(https://getcomposer.org/installer): failed to
open stream: A connection attempt failed because the connected
party did not properly respond after a period of time, or
established connection failed because connected host has failed to respond.
此时,我有点抓狂,因为我不知道为什么我的请求没有通过。我做了一些研究,看到一些帖子说如果你从代理执行此操作,你可能会遇到此错误,但据我所知,我没有使用代理。我甚至仔细检查了三遍,以确保我没有疯掉,每天都使用“我是否使用代理”网站。我从 shell ping 了网站,它没有找到它。我看到你可以尝试不使用 https 而只使用 http,但这也不起作用。
我做了一些进一步的挖掘,发现 composer.phar 有一个诊断选项,所以我运行了它:
$ php composer.phar diagnose
Checking composer.json: FAIL
name : is missing and it is required
description : is missing and it is required
No license specified, it is recommended to do so. For closed-source software you
may use "proprietary" as license.
Checking platform settings: OK
Checking git settings: OK
Checking http connectivity: FAIL
[Composer\Downloader\TransportException] The "https://packagist.org
/packages.json" file could not be downloaded: failed to open stream:
A connection attempt failed because the connected party did not
properly respond after a period of time, or established connection
failed because connected host has failed to respond.
Checking disk free space: OK
Checking composer version:
[Composer\Downloader\TransportException]
The "https://getcomposer.org/version" file could not be downloaded:
failed to open stream: A connection attempt failed because the
connected party did not properly respond after a period of time, or
established connection failed because connected host has failed to respond.
diagnose
所以现在我想知道,是不是我的电脑上的某个设置、某个程序或其他什么东西阻止我以这种方式使用 shell?一开始我无法使用 SSH,现在我甚至在本地使用它都遇到了麻烦……我真的在寻找解决方案。
我为我的防病毒软件安装了 Avast(我禁用了它,试图让它正常运行,但没有成功)我使用 Private Firewall 作为防火墙,但我现在没有运行它。是不是有一些小细节我完全没有理解?我不知道。任何帮助都非常感谢。
答案1
在 Win8 上安装 Composer 安装文件时遇到了类似的问题。禁用私人防火墙,然后单击错误消息下的“重试”。它顺利通过并正确安装。