我在vagrantbox(Centos 7)上运行的作曲家遇到了问题,这种情况开始突然发生。
我已经尝试过手动运行下面链接中提到的命令/解决方案,但无济于事。
(为明确起见, 我使用的是无业游民而不是docker ,但这是我所发现的与我的情况最接近的问题。我发现的大多数信息都与composer.json无效,但这是packagist.org/packages.json,当前有效)
以下是问题的详细信息。
在终端机上运行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.
任何想法为什么会开始发生,我该如何解决?
答案 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 中,我做了以下更改 评论以下行 ;扩展= php_curl.dll 它工作正常
答案 5 :(得分:-3)
我有同样的问题。 我绕过重定向到/ dev / null。
composer require symfony/orm-pack > /dev/null
又好又简单...