【问题标题】:Composer Update "man-in-the-middle attack" errorComposer 更新“中间人攻击”错误
【发布时间】:2013-09-29 10:21:11
【问题描述】:

我克隆了一个本地项目并执行了composer update,但出现了一些错误:

[Composer\Repository\RepositorySecurityException]
的内容 http://packagist.org/p/friendsofsymfony/facebook-bundle$f1d8c88e21c3636c7d6d8d66f3e98ce2c83de942d1ab652f76e8c4f82e2c6363.js 与它的签名不匹配。这应该表明一个 中间人攻击。再次尝试运行作曲家并报告此问题 如果你认为这是一个错误。

我也尝试清除作曲家缓存,但没有任何效果。

有人可以给我一个问题背后的想法,以便对我有所帮助。

作曲家版本:b482ebe0ca18321d9322bd913af73c1c55adebf1

【问题讨论】:

标签: symfony ubuntu composer-php


【解决方案1】:

当我的互联网连接非常不稳定时,它发生在我身上,导致文件损坏。你有“正确”的连接吗?

如果您的连接正确,请尝试删除您的composer.lock 文件并删除您的vendor/ 目录中的所有内容,然后执行php composer.phar install。

【讨论】:

    【解决方案2】:

    就像@Javad 所说,--prefer-dist 应该可以工作。

    我用这个解决了以下问题:

    [Composer\Repository\RepositorySecurityException]
    The contents of http://packagist.org/p/symfony/translation$452e624e2b8bf261
    b553b79c0bfc170e5432455ebb33e9fbce585241a5fb7a16.json do not match its sign
    ature. This should indicate a man-in-the-middle attack. Try running compose
    r again and report this if you think it is a mistake.
    

    这段代码对我有用:

    composer update --prefer-dist
    

    它会超时很长一段时间,有时长达 15 分钟,但随后会开始下载。

    【讨论】:

      【解决方案3】:

      对我来说,解决方案是关闭 FortiClient 中包含的防火墙,然后一切正常。防火墙似乎是“中间人”;)

      【讨论】:

        【解决方案4】:

        在我的场景中,将以下行添加到 composer.json 解决了这个问题。

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

        编辑

        如果您有多个存储库:

          "repositories": [
              { "type": "composer", "url": "https://packagist.org" },
              { "type": "git", "url": "git@bitbucket.org:repo_name/proj_name.git" }
          ],
        

        【讨论】:

        • 我正在使用 ubantu 16.04 lts 的 composer.json 文件在哪里?
        • @SagarGautam ,如果存在,它应该在你的项目根目录中
        • 感谢您的回复,我会看到
        【解决方案5】:

        通过在 composer.json 文件中添加以下代码

        “存储库”:{ “包装师”:{“网址”:“https://packagist.org”,“类型”:“作曲家”} }

        欲了解更多信息:http://tastytuts.net/php-tutorials/composer-update-man-middle-attack-error/

        【讨论】:

          【解决方案6】:

          使用配置选项修复packagist repo

          composer config --global repo.packagist composer https://packagist.org
          

          【讨论】:

          • 该解决方案无需编辑任何文件即可工作。只需在终端中运行此命令。我在 Ubuntu 16.04 中使用它
          【解决方案7】:

          以下对我有用 使用以下内容更新 composer.json 文件,您会发现在 users\Name of the user\AppData\Roaming\Composer

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

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 2018-08-31
            • 2019-07-04
            • 2012-09-21
            • 1970-01-01
            • 2021-08-09
            • 2011-06-30
            • 1970-01-01
            • 1970-01-01
            相关资源
            最近更新 更多