【问题标题】:composer failed to open stream: php_network_getaddresses: getaddrinfo failed: Name or service not known作曲家无法打开流:php_network_getaddresses:getaddrinfo 失败:名称或服务未知
【发布时间】:2018-02-25 14:38:19
【问题描述】:

我是 lumen 新手,我已经完成了

composer clear-cache 之后

composer update

在配置 composer.json 后安装一些包 但是我遇到了这个错误:

[Composer\Downloader\TransportException]                                     
  The "http://packagist.org/p/phpunit/php-timer%24be3efc71adf134c858c1add0117  
  f060f4ab545fe9d357983c7bea165b2008d65.json" file could not be downloaded: p  
  hp_network_getaddresses: getaddrinfo failed: Name or service not known       
  failed to open stream: php_network_getaddresses: getaddrinfo failed: Name o  
  r service not known  

请问我该如何解决这个错误

【问题讨论】:

  • 你连接到互联网了吗?
  • 是的,但有时 newtwork 会低于 35kb/s
  • 看起来只有在网络连接良好的情况下才需要这样做。请记住,作曲家是从互联网上获取这些包的,而不是靠魔法
  • 好的谢谢你,因为我已经尝试了几次,但我仍然可以连接
  • 谢谢@RiggsFolly 是的,我必须有一个良好的网络来更新作曲家,这意味着要避免这种错误。我已断开所有要更新的设备。再次感谢你

标签: php composer-php lumen


【解决方案1】:

这个问题是大约 2 年前发布的,但我想回答这个问题,所以 没有人应该像我一样有困难。

首先打开/etc/resolv.conf

(如果您使用 Ubuntu 发行版,该文件是 /etc/resolvconf/resolv.conf.d/head)

# cat /etc/resolve.conf

然后,将这些行写入文件:

# Google 的公共 DNS 服务器 nameserver 8.8.8.8 # 主 DNS 服务器 nameserver 8.8.4.4 # 辅助 DNS 服务器

这些是上面代码中提到的 Google 的公共 DNS 服务器。

保存并关闭。

使用此命令重启网络服务后:

服务网络重启

这解决了我的问题。

希望对其他人有所帮助...

【讨论】:

    【解决方案2】:

    在我的情况下,Vagrant VM 中的 dns 配置错误。

    在 /etc/resolv.conf 中更新 DNS 解决了我的问题:https://askubuntu.com/questions/897270/dns-cannot-resolve-hosts

    希望这对其他用户有所帮助

    【讨论】:

      【解决方案3】:

      我通过以下方式解决了 Linux/Centos6 (Plesk Onyx) 上的问题:

      打开 /etc/resolv.conf(我的文件是空的)

      添加: 名称服务器 8.8.8.8 域名服务器 8.8.4.4

      选项轮换 选项超时:3

      希望这对那里的人有所帮助。

      【讨论】:

        【解决方案4】:

        万一将来有人需要这个......

        如果您使用的是 docker,很可能您在容器内部遇到了 DNS 问题。基本上解决方法是:

        找出您网络的 DNS 服务器:nmcli dev show | grep 'IP4.DNS'(假设它提供了10.0.0.2

        然后像这样更新/etc/docker/daemon.json

        {
            "dns": ["10.0.0.2", "8.8.8.8"]
        }
        

        当然用你的替换10.0.0.2。那就别忘了sudo service docker restart

        【讨论】:

          【解决方案5】:

          我尝试使用 root 用户,它工作正常。

          我在安装几个模块和作曲家更新时也遇到了同样的错误。

          尝试sudo su 以 root 身份登录并运行 composer 命令。

          【讨论】:

            猜你喜欢
            • 2020-05-21
            • 2017-02-21
            • 2013-12-02
            • 2016-02-07
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 2015-07-22
            • 2016-06-07
            相关资源
            最近更新 更多