【问题标题】:"https://packagist.org/packages.json" file could not be downloaded: failed to open stream: Operation timed out无法下载“https://packagist.org/packages.json”文件:无法打开流:操作超时
【发布时间】:2019-02-26 00:24:46
【问题描述】:

今天早上,我运行了这个命令

composer create-project laravel/laravel laravel-4.2 4.2 --prefer-dist

我一直在得到

无法下载“https://packagist.org/packages.json”文件:无法打开流:操作超时
使用降级模式重试,查看https://getcomposer.org/doc/articles/troubleshooting.md#degraded-mode 了解更多信息

有人知道如何避免这种情况吗?

【问题讨论】:

  • 上述错误表明您的作曲家版本有问题

标签: laravel composer-php


【解决方案1】:

对我来说,这不是我的互联网连接速度的问题,而是“repo.packagist.org”的 IPv6 分辨率问题。我通过将 IPv4 地址添加到我的主机文件中解决了这个问题。这是一个 hack,但它有效。

# dig +short repo.packagist.org
142.44.164.255
# echo "142.44.164.255 repo.packagist.org" >> /etc/hosts

More details here!

【讨论】:

  • 在尝试了很多解决方案后,我只是在我的 AWS 机器上禁用了 IPv6 接口,一切对我来说都很好!谢谢!
【解决方案2】:

这个问题类似这样:Installing laravel suddenly some json file cannot be downloaded

这是对我有用的答案:

这适用于 Linux。 ipv4 优先于 ipv6

sudo sh -c "echo 'precedence ::ffff:0:0/96 100' >> /etc/gai.conf"

【讨论】:

    【解决方案3】:

    对我来说它是 ipv6,我在 macOS 上使用:networksetup -setv6off Wi-Fi 禁用了它。像魅力一样工作。

    在这里找到解决方案:https://getcomposer.org/doc/articles/troubleshooting.md#operation-timed-out-ipv6-issues-

    【讨论】:

    • 这对我也有用。您可以在运行 composer 命令后再次启用 v6:networksetup -setv6automatic Wi-Fi
    【解决方案4】:
    export no_proxy=.github.com,.getcomposer.org
    

    您可以在您的作曲家目录中添加此代码并按回车键。然后再试一次。在我进行 Magento 2 示例数据部署时,我遇到了同样的错误。这段代码确实帮助我继续这个过程。

    【讨论】:

      【解决方案5】:

      在 linux 上,运行此命令似乎有助于使 ipv4 流量具有比 ipv6 更高的优先级,这比完全禁用 ipv6 更好:

      Linux 解决方法:

      sudo sh -c "echo 'precedence ::ffff:0:0/96 100' >> /etc/gai.conf"enter image description here

      【讨论】:

        【解决方案6】:

        根据您的位置切换到镜像: https://packagist.org/mirrors

        特别是如果你在中国。

        【讨论】:

          【解决方案7】:

          清除 DNS 缓存为我解决了这个问题。

          在终端执行:

          dscacheutil -flushcache
          
          sudo killall -HUP mDNSResponder
          

          【讨论】:

            【解决方案8】:

            试试这个对我有用的解决方案!

            "repositories": [
                {
                     "type": "composer", 
                     "url": "https://packagist.org"
                },
                { "packagist": false }
            ]
            

            并再次运行composer:update。如果没有那么run composer self-update

            我得到了here 的答案,它就像巫术一样工作......

            【讨论】:

              【解决方案9】:

              问题是由于互联网连接缓慢或没有互联网。如果没有互联网,则无法从服务器下载软件包。这就是为什么它给出了我多次遇到的这个错误。

              【讨论】:

                【解决方案10】:

                这通常发生在您没有从服务器获得响应时。 1.检查互联网连接。 2.检查任何代理阻止您从服务器的响应。 3.如果阻止代理。在安装作曲家时,您在安装过程中设置了正确的代理配置。 4.您应该检查您的管理员用户权限。 5.如果您是访客或受限帐户。您不能从外部服务器下载任何文件。

                【讨论】:

                  【解决方案11】:

                  我听说如果您居住在a government firewall 后面的区域可能会出现此问题,您可能想测试它是否在 VPN 后面有效。

                  【讨论】:

                    【解决方案12】:

                    此问题是由于您的低速或连接不良而出现的。它无法访问互联网和下载存储库。 检查您的互联网连接,然后再次尝试将您的主机连接到互联网。

                    【讨论】:

                      【解决方案13】:

                      问题很可能与您的互联网连接有关。只需尝试使用其他(或更可靠的)互联网来源即可。

                      如果问题仍然存在,并且您确定您的互联网连接,请查看建议here

                      【讨论】:

                      • 看起来他们正在使用防火墙来阻止某些 IP。我使用了 VPN,它对我有用。
                      猜你喜欢
                      • 2019-09-30
                      • 2019-05-19
                      • 2018-10-19
                      • 2018-06-18
                      • 2020-11-02
                      • 2018-06-09
                      • 2022-07-06
                      • 2023-03-27
                      相关资源
                      最近更新 更多