如何解决“ https://repo.packagist.org/packages.json不包含有效的Json”的问题?

时间:2019-04-09 16:13:15

标签: composer-php vagrant symfony4

我在vagrantbox(Centos 7)上运行的作曲家遇到了问题,这种情况开始突然发生。

我已经尝试过手动运行下面链接中提到的命令/解决方案,但无济于事。

(为明确起见, 我使用的是无业游民而不是docker ,但这是我所发现的与我的情况最接近的问题。我发现的大多数信息都与composer.json无效,但这是packagist.org/packages.json,当前有效)

whats-app twilio API

以下是问题的详细信息。

在终端机上运行composer update时,我得到:

 composer update


  [Seld\JsonLint\ParsingException]
  "https://repo.packagist.org/packages.json" does not contain valid JSON
  Parse error on line 1:

  ^
  Expected one of: 'STRING', 'NUMBER', 'NULL', 'TRUE', 'FALSE', '{', '['

并且在终端上也运行composer install时,每个软件包都将返回以下内容:

Failed to download psr/cache from dist: "https://api.github.com/repos/php-fig/cache/zipball/d11b50ad223250cf17b86e38383413f5a6764bf8" 
appears broken, and returned an empty 200 response
    Now trying to download from source

运行composer config --global repo.packagist composer packagist.org时 结果现在是

composer update
Loading composer repositories with package information


  [Composer\Downloader\TransportException]
  Your configuration does not allow connections to http://repo.packagist.org/packages.json. See https://getcomposer.o
  rg/doc/06-config.md#secure-http for details.

任何想法为什么会开始发生,我该如何解决?

6 个答案:

答案 0 :(得分:4)

这里同样的问题,因为php更新到7.2.17。 在使用php 7.2.16 composer的centos 7上运行得很好... 现在回滚到7.2.16是唯一找到的解决方案...

编辑: 似乎是symfony flex问题:https://github.com/symfony/flex/issues/484

答案 1 :(得分:4)

如果您的提供商/系统配置为使用IPv6,但没有有效的IPv6路由到Internet,则也可能与IPv6相关。

这件事发生在我身上,并且在做 sysctl -w net.ipv6.conf.all.disable_ipv6=1(以root用户身份),然后再次尝试作曲即可解决该问题。

要永久应用它,请将规则添加到/etc/sysctl.conf(或您首选使用OS的任何地方)

答案 2 :(得分:0)

当我们在控制台中运行此命令时,它将起作用

composer config disable-tls true

答案 3 :(得分:0)

我有同样的问题。经过几天的搜索,我找到了解决方案。似乎是PHP问题。尝试在php.ini上注释一行curl扩展。我正在使用php版本5.6。

extension=php_curl.dll 

Type;扩展名之前,至少是这样:

;extension=php_curl.dll

答案 4 :(得分:-1)

在 XAMP 中,我做了以下更改 评论以下行 ;扩展= p​​hp_curl.dll 它工作正常

答案 5 :(得分:-3)

我有同样的问题。 我绕过重定向到/ dev / null。

composer require symfony/orm-pack > /dev/null

又好又简单...