Composer: zlib_decode(): Datenfehler

Erstellt am 25. Okt. 2016  ·  65Kommentare  ·  Quelle: composer/composer

Mein composer.json :

{
    "name": "test/test",
    "license": "proprietary",
    "type": "project",
    "autoload": {
        "psr-4": {
            "": "src/"
        },
        "classmap": [
            "app/AppKernel.php",
            "app/AppCache.php"
        ]
    },
    "autoload-dev": {
        "psr-4": {
            "Tests\\": "tests/"
        }
    },
    "require": {
        "php": ">=7.0.11",
        "symfony/symfony": "3.1.*",
        "doctrine/orm": "^2.5",
        "doctrine/doctrine-bundle": "^1.6",
        "doctrine/doctrine-cache-bundle": "^1.2",
        "doctrine/doctrine-migrations-bundle": "^1.1",
        "symfony/swiftmailer-bundle": "^2.3",
        "symfony/monolog-bundle": "^2.8",
        "symfony/assetic-bundle": "^2.8",
        "symfony/polyfill-apcu": "^1.0",
        "sensio/distribution-bundle": "^5.0",
        "sensio/framework-extra-bundle": "^3.0.2",
        "incenteev/composer-parameter-handler": "^2.0",
        "snc/redis-bundle": "2.x-dev",
        "predis/predis": "^1.0",
        "lexik/jwt-authentication-bundle": "^1.5",
        "tss/automailer-bundle": "dev-master",
        "knplabs/knp-paginator-bundle": "^2.5",
        "fabpot/goutte": "^3.1",
        "whiteoctober/breadcrumbs-bundle": "^1.2",
        "spraed/pdf-generator-bundle": "^1.3",
        "vich/uploader-bundle": "1.2.0",
        "friendsofsymfony/jsrouting-bundle": "^1.6",
        "gregwar/captcha-bundle": "^2.0",
        "liip/imagine-bundle": "^1.6",
        "knplabs/knp-menu-bundle": "^2.0",
        "fabpot/php-cs-fixer": "^1.12",
        "symfony/serializer": "^3.1",
        "jms/serializer": "^1.3",
        "jms/serializer-bundle": "^1.1"

    },
    "require-dev": {
        "sensio/generator-bundle": "^3.0",
        "symfony/phpunit-bridge": "^3.0"
    },
    "scripts": {
        "post-install-cmd": [
            "Incenteev\\ParameterHandler\\ScriptHandler::buildParameters",
            "Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::buildBootstrap",
            "Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::clearCache",
            "Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::installAssets",
            "Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::installRequirementsFile",
            "Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::prepareDeploymentTarget"
        ],
        "post-update-cmd": [
            "Incenteev\\ParameterHandler\\ScriptHandler::buildParameters",
            "Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::buildBootstrap",
            "Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::clearCache",
            "Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::installAssets",
            "Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::installRequirementsFile",
            "Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::prepareDeploymentTarget"
        ]
    },
    "extra": {
        "symfony-app-dir": "app",
        "symfony-bin-dir": "bin",
        "symfony-var-dir": "var",
        "symfony-web-dir": "web",
        "symfony-tests-dir": "tests",
        "symfony-assets-install": "relative",
        "incenteev-parameters": {
            "file": "app/config/parameters.yml"
        }
    }
}

Ausgabe von composer diagnose :

Checking composer.json: WARNING
Defining autoload.psr-4 with an empty namespace prefix is a bad idea for performance
require.snc/redis-bundle : exact version constraints (2.x-dev) should be avoided if the package follows semantic versioning
require.tss/automailer-bundle : unbound version constraints (dev-master) should be avoided
require.vich/uploader-bundle : exact version constraints (1.2.0) should be avoided if the package follows semantic versioning
Checking platform settings: OK
Checking git settings: OK
Checking http connectivity to packagist: OK
Checking https connectivity to packagist: OK
Checking github.com rate limit: OK
Checking disk free space: OK
Checking pubkeys:
Tags Public Key Fingerprint: 57815BA2 7E54DC31 7ECC7CC5 573090D0  87719BA6 8F3BB723 4E5D42D0 84A14642
Dev Public Key Fingerprint: 4AC45767 E5EC2265 2F0C1167 CBBB8A2B  0C708369 153E328C AD90147D AFE50952
OK
Checking composer version: OK

Wenn ich diesen Befehl ausführe:

composer update --lock -vvv

Ich bekomme folgende Ausgabe:

Reading ./composer.json
Loading config file ./composer.json
Checked CA file /etc/ssl/certs/ca-certificates.crt: valid
Executing command (/var/www): git branch --no-color --no-abbrev -v
Failed to initialize global composer: Composer could not find the config file: /home/vagrant/.config/composer/composer.json
To initialize a project, please create a composer.json file as described in the https://getcomposer.org/ "Getting Started" section
Reading /var/www/vendor/composer/installed.json
Loading plugin PackageVersions\Installer
Running 1.2.1 (2016-09-12 11:27:19) with PHP 7.0.11-1+deb.sury.org~trusty+1 on Linux / 3.13.0-86-generic
Reading ./composer.lock
Loading composer repositories with package information
Downloading https://packagist.org/packages.json
Writing /home/vagrant/.cache/composer/repo/https---packagist.org/packages.json into cache
Updating dependencies (including require-dev)
Reading /home/vagrant/.cache/composer/repo/https---packagist.org/p-provider-2013.json from cache
Reading /home/vagrant/.cache/composer/repo/https---packagist.org/p-provider-2014.json from cache
Downloading http://packagist.org/p/provider-2015%245cb89636f37ca04dbb7ceb6ba2f12ccbc6cd3a53b2ae3528c090a56f90975e18.json
Writing /home/vagrant/.cache/composer/repo/https---packagist.org/p-provider-2015.json into cache
Reading /home/vagrant/.cache/composer/repo/https---packagist.org/p-provider-2016-01.json from cache
Reading /home/vagrant/.cache/composer/repo/https---packagist.org/p-provider-2016-04.json from cache
Downloading http://packagist.org/p/provider-2016-07%247062176fff1b75c50a0a1383e29cc73864f4c0ce30d243c1234e0833be1193c0.json
Writing /home/vagrant/.cache/composer/repo/https---packagist.org/p-provider-2016-07.json into cache
Downloading http://packagist.org/p/provider-2016-10%244d79c57bd512ea7c9843446e53ae95329eef94e3be3511f5f701a5f400739bd0.json
Writing /home/vagrant/.cache/composer/repo/https---packagist.org/p-provider-2016-10.json into cache
Reading /home/vagrant/.cache/composer/repo/https---packagist.org/p-provider-archived.json from cache
Downloading http://packagist.org/p/provider-latest%24dbfb3faaaffdfaec3494564d129e9a9310fc4a753efad4fcc8b4f91cf787398a.json
Writing /home/vagrant/.cache/composer/repo/https---packagist.org/p-provider-latest.json into cache
Reading /home/vagrant/.cache/composer/repo/https---packagist.org/provider-doctrine$lexer.json from cache
Reading /home/vagrant/.cache/composer/repo/https---packagist.org/provider-doctrine$annotations.json from cache
Reading /home/vagrant/.cache/composer/repo/https---packagist.org/provider-symfony$polyfill-util.json from cache
Reading /home/vagrant/.cache/composer/repo/https---packagist.org/provider-paragonie$random-compat.json from cache
Reading /home/vagrant/.cache/composer/repo/https---packagist.org/provider-symfony$polyfill-php70.json from cache
Reading /home/vagrant/.cache/composer/repo/https---packagist.org/provider-symfony$polyfill-php56.json from cache
Reading /home/vagrant/.cache/composer/repo/https---packagist.org/provider-symfony$polyfill-mbstring.json from cache
Reading /home/vagrant/.cache/composer/repo/https---packagist.org/provider-symfony$intl.json from cache
Reading /home/vagrant/.cache/composer/repo/https---packagist.org/provider-symfony$polyfill-intl-icu.json from cache
Reading /home/vagrant/.cache/composer/repo/https---packagist.org/provider-symfony$icu.json from cache
Reading /home/vagrant/.cache/composer/repo/https---packagist.org/provider-symfony$polyfill-php54.json from cache
Reading /home/vagrant/.cache/composer/repo/https---packagist.org/provider-doctrine$inflector.json from cache
Reading /home/vagrant/.cache/composer/repo/https---packagist.org/provider-doctrine$collections.json from cache
Reading /home/vagrant/.cache/composer/repo/https---packagist.org/provider-doctrine$cache.json from cache
Reading /home/vagrant/.cache/composer/repo/https---packagist.org/provider-doctrine$common.json from cache
Reading /home/vagrant/.cache/composer/repo/https---packagist.org/provider-jdorn$sql-formatter.json from cache
Reading /home/vagrant/.cache/composer/repo/https---packagist.org/provider-symfony$doctrine-bridge.json from cache
Reading /home/vagrant/.cache/composer/repo/https---packagist.org/provider-doctrine$doctrine-cache-bundle.json from cache
Reading /home/vagrant/.cache/composer/repo/https---packagist.org/provider-doctrine$dbal.json from cache
Reading /home/vagrant/.cache/composer/repo/https---packagist.org/provider-symfony$console.json from cache
Reading /home/vagrant/.cache/composer/repo/https---packagist.org/provider-symfony$framework-bundle.json from cache
Reading /home/vagrant/.cache/composer/repo/https---packagist.org/provider-doctrine$doctrine-bundle.json from cache
Reading /home/vagrant/.cache/composer/repo/https---packagist.org/provider-symfony$security-acl.json from cache
Reading /home/vagrant/.cache/composer/repo/https---packagist.org/provider-symfony$debug.json from cache
Reading /home/vagrant/.cache/composer/repo/https---packagist.org/provider-symfony$config.json from cache
Reading /home/vagrant/.cache/composer/repo/https---packagist.org/provider-symfony$dependency-injection.json from cache
Reading /home/vagrant/.cache/composer/repo/https---packagist.org/provider-symfony$event-dispatcher.json from cache
Reading /home/vagrant/.cache/composer/repo/https---packagist.org/provider-symfony$filesystem.json from cache
Reading /home/vagrant/.cache/composer/repo/https---packagist.org/provider-symfony$http-kernel.json from cache
Reading /home/vagrant/.cache/composer/repo/https---packagist.org/provider-symfony$routing.json from cache
Reading /home/vagrant/.cache/composer/repo/https---packagist.org/provider-symfony$stopwatch.json from cache
Reading /home/vagrant/.cache/composer/repo/https---packagist.org/provider-symfony$templating.json from cache
Reading /home/vagrant/.cache/composer/repo/https---packagist.org/provider-symfony$translation.json from cache
Reading /home/vagrant/.cache/composer/repo/https---packagist.org/provider-symfony$http-foundation.json from cache
Reading /home/vagrant/.cache/composer/repo/https---packagist.org/provider-symfony$finder.json from cache
Reading /home/vagrant/.cache/composer/repo/https---packagist.org/provider-symfony$security-core.json from cache
Reading /home/vagrant/.cache/composer/repo/https---packagist.org/provider-symfony$security-csrf.json from cache
Reading /home/vagrant/.cache/composer/repo/https---packagist.org/provider-symfony$asset.json from cache
Reading /home/vagrant/.cache/composer/repo/https---packagist.org/provider-symfony$class-loader.json from cache
Downloading http://packagist.org/p/symfony/cache%24a1f76f69d06d444880b68ccf242fb1bd45fc3e1ab332313999d2669d3a5e2672.json
Failed to decode response: zlib_decode(): data error
Retrying with degraded mode, check https://getcomposer.org/doc/articles/troubleshooting.md#degraded-mode for more info
Downloading http://packagist.org/p/symfony/cache%24a1f76f69d06d444880b68ccf242fb1bd45fc3e1ab332313999d2669d3a5e2672.json
Downloading http://packagist.org/p/symfony/cache%24a1f76f69d06d444880b68ccf242fb1bd45fc3e1ab332313999d2669d3a5e2672.json
Writing /home/vagrant/.cache/composer/repo/https---packagist.org/provider-symfony$cache.json into cache
Downloading http://packagist.org/p/psr/log%244f0edf1b639fc9b0914c0c8d13bef27cdaa71100c3719780a0459b9dd799753d.json
Writing /home/vagrant/.cache/composer/repo/https---packagist.org/provider-psr$log.json into cache
Downloading http://packagist.org/p/symfony/polyfill-php55%242c54472a8856ee39440a29ee7182c3205d88d60817040f9dea8604d9eb7f2a41.json
Writing /home/vagrant/.cache/composer/repo/https---packagist.org/provider-symfony$polyfill-php55.json into cache
Downloading http://packagist.org/p/symfony/polyfill-apcu%24a910411a4953aeae3659a62e7334cc11b50e9066d4dc6a6b63ff4a665879ebb1.json
Writing /home/vagrant/.cache/composer/repo/https---packagist.org/provider-symfony$polyfill-apcu.json into cache
Downloading http://packagist.org/p/psr/cache%24ed2696a6c78734dcaf8b8eb5ba4b7ebc9d2822015a1211521e390c514093e303.json
Downloading http://packagist.org/p/psr/cache%24ed2696a6c78734dcaf8b8eb5ba4b7ebc9d2822015a1211521e390c514093e303.json
Downloading http://packagist.org/p/psr/cache%24ed2696a6c78734dcaf8b8eb5ba4b7ebc9d2822015a1211521e390c514093e303.json


  [ErrorException]
  zlib_decode(): data error


Exception trace:
 () at phar:///bin/composer/src/Composer/Util/RemoteFilesystem.php:388
 Composer\Util\ErrorHandler::handle() at n/a:n/a
 zlib_decode() at phar:///bin/composer/src/Composer/Util/RemoteFilesystem.php:388
 Composer\Util\RemoteFilesystem->get() at phar:///bin/composer/src/Composer/Util/RemoteFilesystem.php:101
 Composer\Util\RemoteFilesystem->getContents() at phar:///bin/composer/src/Composer/Repository/ComposerRepository.php:646
 Composer\Repository\ComposerRepository->fetchFile() at phar:///bin/composer/src/Composer/Repository/ComposerRepository.php:332
 Composer\Repository\ComposerRepository->whatProvides() at phar:///bin/composer/src/Composer/DependencyResolver/Pool.php:204
 Composer\DependencyResolver\Pool->computeWhatProvides() at phar:///bin/composer/src/Composer/DependencyResolver/Pool.php:193
 Composer\DependencyResolver\Pool->whatProvides() at phar:///bin/composer/src/Composer/DependencyResolver/RuleSetGenerator.php:161
 Composer\DependencyResolver\RuleSetGenerator->whitelistFromPackage() at phar:///bin/composer/src/Composer/DependencyResolver/RuleSetGenerator.php:322
 Composer\DependencyResolver\RuleSetGenerator->getRulesFor() at phar:///bin/composer/src/Composer/DependencyResolver/Solver.php:214
 Composer\DependencyResolver\Solver->solve() at phar:///bin/composer/src/Composer/Installer.php:461
 Composer\Installer->doInstall() at phar:///bin/composer/src/Composer/Installer.php:216
 Composer\Installer->run() at phar:///bin/composer/src/Composer/Command/UpdateCommand.php:174
 Composer\Command\UpdateCommand->execute() at phar:///bin/composer/vendor/symfony/console/Command/Command.php:259
 Symfony\Component\Console\Command\Command->run() at phar:///bin/composer/vendor/symfony/console/Application.php:847
 Symfony\Component\Console\Application->doRunCommand() at phar:///bin/composer/vendor/symfony/console/Application.php:192
 Symfony\Component\Console\Application->doRun() at phar:///bin/composer/src/Composer/Console/Application.php:231
 Composer\Console\Application->doRun() at phar:///bin/composer/vendor/symfony/console/Application.php:123
 Symfony\Component\Console\Application->run() at phar:///bin/composer/src/Composer/Console/Application.php:104
 Composer\Console\Application->run() at phar:///bin/composer/bin/composer:43
 require() at /bin/composer:24

Und ich habe damit gerechnet:
Voraussichtliche Aktualisierung der composer.lock

Hilfreichster Kommentar

Nur für den Fall, dass jemand wegen des zlib_decode() Fehlers hierher umgeleitet wird, während er versucht, Abhängigkeiten mit composer update zu aktualisieren

[ErrorException]
  zlib_decode(): data error

Ich bestätige, dass der Fehler mit VirtualBox zusammenhängt , entweder 5.0.28 oder 5.1.8 (der momentan letzte stabile Build) ist betroffen.
Wie @radutopala betont , löst ein Downgrade auf 5.0.26 das Problem.

Ich hatte das gleiche Problem auf 3 verschiedenen Computern, macOS 10.10 und 10.12.
In allen von ihnen hat composer diagnose keine Probleme gemeldet.

Ich habe viele Tests durchgeführt, saubere VM-Instanzen von Laravel Homestead erstellt und das Laravel-Framework installiert, IPv4 in der VM erzwungen, die SSL-Überprüfung von Packagist deaktiviert usw.

Nichts hat funktioniert, bis ich auf 5.0.26 herabgestuft habe.

Alle 65 Kommentare

Fehler ist reproduzierbar mit allen 1.2.* , nicht reproduzierbar mit 1.1.3 .

Bitte durchsuchen Sie bestehende Probleme nach möglichen Lösungen. Dies ist kein Composer-Problem, sondern ein Umgebungsproblem.

@alcohol bin mir nicht sicher, ob es sich nur um ein Umgebungsproblem handelt, da der Komponist 1.1.3 in derselben Umgebung einwandfrei funktioniert, wie ich oben sagte.

Habe über die Tickets gesucht, die beziehen sich auf:

Wenn Sie mir keine Möglichkeit bieten, es konsistent zu reproduzieren, handelt es sich definitiv um ein Umgebungsproblem.

@alcohol das hat mein Problem behoben: https://github.com/composer/composer/issues/4121#issuecomment -123701983. Also im Grunde hat es getan, https erzwingen.

Das Problem trat in Vagrant-Boxen auf, mit jeder Art von PHP- oder Composer-Version. Mit https://gist.github.com/radutopala/8761ac647ee165d373b0c6d727cd56ea erhielt ich zeitweise 1 bis 20 Wiederholungen, bis das gzip erfolgreich dekodiert wurde.

Lassen Sie mich raten, ein freigegebenes Verzeichnis auch mit Ihrem Host-System zu verwenden?

@Alkohol ja

Was passiert, wenn Sie es innerhalb von Vagrant ausführen, ohne ein freigegebenes Verzeichnis? ZB rein in der Vagabundenkiste, Lagerung auch in der Vagabundenkiste.

@alcohol anscheinend der gleiche Fehler:

vagrant<strong i="7">@box</strong>:~$ php test.php
Retry 0 | Decoded successfully!
vagrant<strong i="8">@box</strong>:~$ php test.php
Retry 0 | Error in Decoding process! Re-fetching ...
Retry 1 | Error in Decoding process! Re-fetching ...
Retry 2 | Decoded successfully!
vagrant<strong i="9">@box</strong>:~$ php test.php
Retry 0 | Decoded successfully!
vagrant<strong i="10">@box</strong>:~$ php test.php
Retry 0 | Decoded successfully!
vagrant<strong i="11">@box</strong>:~$ php test.php
Retry 0 | Error in Decoding process! Re-fetching ...
Retry 1 | Error in Decoding process! Re-fetching ...
Retry 2 | Error in Decoding process! Re-fetching ...
Retry 3 | Error in Decoding process! Re-fetching ...
Retry 4 | Error in Decoding process! Re-fetching ...
Retry 5 | Error in Decoding process! Re-fetching ...
Retry 6 | Decoded successfully!
vagrant<strong i="12">@box</strong>:~$ php test.php
Retry 0 | Decoded successfully!
vagrant<strong i="13">@box</strong>:~$ php test.php
Retry 0 | Error in Decoding process! Re-fetching ...
Retry 1 | Decoded successfully!
vagrant<strong i="14">@box</strong>:~$ php test.php
Retry 0 | Error in Decoding process! Re-fetching ...
Retry 1 | Error in Decoding process! Re-fetching ...
Retry 2 | Decoded successfully!
vagrant<strong i="15">@box</strong>:~$ php test.php
Retry 0 | Error in Decoding process! Re-fetching ...
Retry 1 | Error in Decoding process! Re-fetching ...
Retry 2 | Error in Decoding process! Re-fetching ...
Retry 3 | Error in Decoding process! Re-fetching ...
Retry 4 | Error in Decoding process! Re-fetching ...
Retry 5 | Error in Decoding process! Re-fetching ...
Retry 6 | Error in Decoding process! Re-fetching ...
Retry 7 | Error in Decoding process! Re-fetching ...
Retry 8 | Error in Decoding process! Re-fetching ...
Retry 9 | Decoded successfully!

Es spielt also keine Rolle, wo der Test abgelegt wird, sei es im freigegebenen Ordner oder in einem internen Boxordner.

Für das Erwähnenswerte habe ich VirtualBox 5.0.28 und Landstreicher 1.8.1 .

Nicht wirklich erwähnenswert, da wir weder Virtualbox noch Vagabund pflegen (obwohl ich bezweifle, dass Vagabund hier schuld ist, wahrscheinlich Virtualbox).

Nun .. auch wenn Composer-Betreuer nicht eng mit VirtualBox umgehen oder Vagabunden sind, können andere Benutzer auf das gleiche Problem stoßen, das ich hatte.

Ich habe gerade entdeckt, dass VirtualBox 5.0.28 die Ursache ist!

Und Vagabund hat VirtualBox auf 5.0.10 herabgestuft:

==>  Provider 'virtualbox' not found. We'll automatically install it now...
     The installation process will start below. Human interaction may be
     required at some points. If you're uncomfortable with automatically
     installing this provider, you can safely Ctrl-C this process and install
     it manually.
==>  Downloading VirtualBox 5.0.10...
     This may not be the latest version of VirtualBox, but it is a version
     that is known to work well. Over time, we'll update the version that
     is installed.

Jetzt dekodiert der Test den gzip-ed Inhalt jedes Mal korrekt:

vagrant<strong i="13">@box</strong>:~$ php test.php
Retry 0 | Decoded successfully!
vagrant<strong i="14">@box</strong>:~$ php test.php
Retry 0 | Decoded successfully!
vagrant<strong i="15">@box</strong>:~$ php test.php
Retry 0 | Decoded successfully!
vagrant<strong i="16">@box</strong>:~$ php test.php
Retry 0 | Decoded successfully!
vagrant<strong i="17">@box</strong>:~$ php test.php
Retry 0 | Decoded successfully!

Also .. die Lösung besteht darin, Vagrant die richtige VirtualBox-Version installieren zu lassen.

Nur für den Fall, dass jemand wegen des zlib_decode() Fehlers hierher umgeleitet wird, während er versucht, Abhängigkeiten mit composer update zu aktualisieren

[ErrorException]
  zlib_decode(): data error

Ich bestätige, dass der Fehler mit VirtualBox zusammenhängt , entweder 5.0.28 oder 5.1.8 (der momentan letzte stabile Build) ist betroffen.
Wie @radutopala betont , löst ein Downgrade auf 5.0.26 das Problem.

Ich hatte das gleiche Problem auf 3 verschiedenen Computern, macOS 10.10 und 10.12.
In allen von ihnen hat composer diagnose keine Probleme gemeldet.

Ich habe viele Tests durchgeführt, saubere VM-Instanzen von Laravel Homestead erstellt und das Laravel-Framework installiert, IPv4 in der VM erzwungen, die SSL-Überprüfung von Packagist deaktiviert usw.

Nichts hat funktioniert, bis ich auf 5.0.26 herabgestuft habe.

Downgrade auf 5.0.26 funktioniert auch unter OSX 10.11.6

@radutopala Genial ! Tatsächlich ist es VirtualBox.

@jaumesala Großartige Arbeit bei der Ermittlung der neuesten spezifischen VirtualBox-Version, die dieses Problem nicht aufweist!

Ich habe gerade versucht, auf VirtualBox 5.0.26 herunterzustufen und tatsächlich tritt das Problem nicht mehr auf. Ihr zwei habt mir Stunden weiterer Frustration erspart, und ich weiß das sehr zu schätzen.

Da dies mit Composer kein Problem zu sein scheint, habe ich einen Thread in den VirtualBox-Foren eröffnet. Wenn dort niemand eine brauchbare Lösung anbieten kann, werde ich einen tatsächlichen Fehlerbericht mit VirtualBox öffnen.

https://forums.virtualbox.org/viewtopic.php?f=3&t=80396&p=376826

Es wäre hilfreich, wenn andere Leute den obigen Thread besuchen und sich mit der Gastbetriebssystemversion und anderen Informationen, die für die VirtualBox-Entwickler nützlich sein könnten, einstimmen könnten.

Ich hatte diesen Fehler beim Homestead-Image mit Vagrant 1.8.1 und Virtual Box 5.1.8 auf Mac Os. Das Downgrade auf Virtualbox 5.0.26 und das Composer-Update werden problemlos abgeschlossen.

Hallo, ich hatte das gleiche Problem. Ein Downgrade von VirtualBox von 5.1.8 auf 5.1.6 hat geholfen.

Auch hier gibt es definitiv ein Problem mit der neuesten virtuellen Box und den freigegebenen nfs-Ordnern.

Ich bin heute auf dieses Problem mit genau dem gleichen Setup wie @udaiveerS gestoßen. Ein Downgrade von VirtualBox auf 5.1.6 hat es auch für mich gelöst.

@mihhac @thats4shaw Gut zu wissen, dass 5.1.6 die neueste Version des 5.1-Zweigs ist, die nicht unter diesem Problem leidet.

Hat jemand das Netzwerk-Know-how, um sich in den VirtualBox-Thread unter https://forums.virtualbox.org/viewtopic.php?f=3&t=80396&p=376826 einzuklinken? Das wäre für den Rest von uns sehr hilfreich. :)

@cbj4074 es ist sehr unwahrscheinlich, dass Sie hier solche Leute finden 😆 , aber wenn Sie VirtualBox-Leute eine Möglichkeit geben, dieses Problem zu reproduzieren, werden sie es selbst herausfinden.

Beginnen Sie mit der Angabe Ihres Host- und Gastbetriebssystems und verwenden Sie dann entweder eine vorgefertigte virtuelle Maschine, die online verfügbar ist, oder geben Sie an, dass Sie sie von einem Image installiert haben. Danach fügen Sie die Befehle hinzu, die sie ausführen müssen, um PHP und das Testskript auf der Box auszuführen und was die erwarteten und tatsächlichen Ergebnisse sind.

@Ingramz Danke! Alles tolle Ratschläge. Vielleicht kann ich dem heute ein paar Stunden widmen.

Ich würde PHP wirklich gerne komplett aus der Gleichung eliminieren. Vielleicht ist es eine Ablenkung vom zugrunde liegenden Problem. Wenn wir einfach zeigen könnten, dass Dateien unabhängig von ihrer Quelle nicht zuverlässig "gezippt" werden können, wäre das ideal.

Aber vielleicht ist PHP ein Teil des Problems. Ich finde es merkwürdig, dass das Betriebssystem selbst nicht im nächsten Mülleimer kotzen würde, wenn das Gunzipping auf der ganzen Linie fehlgeschlagen wäre. Vermutlich wird gzip überall verwendet, vom Paketmanager bis zur Log-Rotation.

@ cbj4074 Soweit ich weiß, spielt es keine Rolle, was Sie ihnen geben. Das erste, was sie sich ansehen, sind die jüngsten Änderungen, indem eine binäre Suche nach den Commits durchgeführt wird. Sie wissen wahrscheinlich selbst besser, wo sie sich darum kümmern müssen.

Vielleicht lohnt sich ein Blick in die strace-Ausgabe des Testskripts: https://gist.github.com/magnetik/82a9d1d9c34401b6268ba07a949cc491#file -strace-txt

Am Ende sieht es nur so aus, als wäre die Verbindung unterbrochen ?.

@magnetik kannst du das aber konsequent reproduzieren?

Wenn das Skript im Wesentlichen ausgeführt wird, schlagen die ersten 3-20 Versuche fehl. Nicht konsequent.

Ich verwende Sury PPA

> % php -v
PHP 7.0.12-1+deb.sury.org~xenial+1 (cli) ( NTS )
Copyright (c) 1997-2016 The PHP Group
Zend Engine v3.0.0, Copyright (c) 1998-2016 Zend Technologies
    with Zend OPcache v7.0.12-1+deb.sury.org~xenial+1, Copyright (c) 1999-2016, by Zend Technologies

Was meinst du, außer dem letzten? Es hat ein exit() im else-Zweig, also sollte es nach dem ersten Fehler abbrechen. Ich bin mir nicht sicher, was der Zweck von $retries ist, da die Implementierung keine richtige Schleife oder Überprüfung hat.

Ich habe meine Antwort bearbeitet, da sie nicht klar genug war. Manchmal dekodiert es erfolgreich nach 3 Versuchen, manchmal nach 20 Versuchen.

Ich habe die Ausgabe von file_get_content protokolliert, wenn sie fehlschlägt, sind es 3 KB und die erfolgreiche 4 KB.

Ich habe das Protokoll im Kern hinzugefügt:

Können Sie versuchen, Ihr Skript gegen https://dump.robbast.nl/tmp.json auszuführen?

Gleiches, 3 Versuche 3 KB und der letzte ist 4 KB.

Gut. Völlig anderer Server, aber das gleiche Problem. Das ist kein gutes Zeichen.

Was ist, wenn Sie es ausführen mit:

    $opts = array(
        'http' => array(
            'header' => array(
                "Accept-Encoding: application/json, text/plain",
                "Connection: close",
                "User-Agent: Composer/1.2.1 (Linux; 3.13.0-86-generic; PHP 7.0.12)"
            ),
            'ignore_errors' => "1",
            'protocol_version' => "1.1"
        )
    );

Warte ab ! Ich habe den letzten Test vermasselt, tut mir leid.

Mit der URL https://dump.robbast.nl/tmp.json funktioniert es gut mit der gzip-Accept-Kodierung.

Oh, es funktioniert konsequent?

Ich habe es 50 mal laufen lassen, funktioniert immer.

Ja das kann ich sehen :p


Log-Einträge

Nov 07 10:48:37 vps.robbast.nl nginx[10324]: dump.robbast.nl 200 "GET /tmp.json HTTP/1.1" 40586 0.061 - *.*.*.*
Nov 07 10:48:37 vps.robbast.nl nginx[10324]: dump.robbast.nl 200 "GET /tmp.json HTTP/1.1" 40586 0.058 - *.*.*.*
Nov 07 10:48:37 vps.robbast.nl nginx[10324]: dump.robbast.nl 200 "GET /tmp.json HTTP/1.1" 40586 0.058 - *.*.*.*
Nov 07 10:48:37 vps.robbast.nl nginx[10324]: dump.robbast.nl 200 "GET /tmp.json HTTP/1.1" 40586 0.058 - *.*.*.*
Nov 07 10:48:38 vps.robbast.nl nginx[10324]: dump.robbast.nl 200 "GET /tmp.json HTTP/1.1" 40586 0.058 - *.*.*.*
Nov 07 10:48:38 vps.robbast.nl nginx[10324]: dump.robbast.nl 200 "GET /tmp.json HTTP/1.1" 40586 0.059 - *.*.*.*
Nov 07 10:48:38 vps.robbast.nl nginx[10324]: dump.robbast.nl 200 "GET /tmp.json HTTP/1.1" 40586 0.056 - *.*.*.*
Nov 07 10:48:38 vps.robbast.nl nginx[10324]: dump.robbast.nl 200 "GET /tmp.json HTTP/1.1" 40586 0.058 - *.*.*.*
Nov 07 10:48:38 vps.robbast.nl nginx[10324]: dump.robbast.nl 200 "GET /tmp.json HTTP/1.1" 40586 0.060 - *.*.*.*
Nov 07 10:48:38 vps.robbast.nl nginx[10324]: dump.robbast.nl 200 "GET /tmp.json HTTP/1.1" 40586 0.059 - *.*.*.*
Nov 07 10:48:39 vps.robbast.nl nginx[10324]: dump.robbast.nl 200 "GET /tmp.json HTTP/1.1" 40586 0.058 - *.*.*.*
Nov 07 10:48:39 vps.robbast.nl nginx[10324]: dump.robbast.nl 200 "GET /tmp.json HTTP/1.1" 40586 0.054 - *.*.*.*
Nov 07 10:48:55 vps.robbast.nl nginx[10323]: dump.robbast.nl 200 "GET /tmp.json HTTP/1.1" 3207 0.058 12.70 *.*.*.*
Nov 07 10:48:57 vps.robbast.nl nginx[10323]: dump.robbast.nl 200 "GET /tmp.json HTTP/1.1" 3207 0.056 12.70 *.*.*.*
Nov 07 10:48:58 vps.robbast.nl nginx[10323]: dump.robbast.nl 200 "GET /tmp.json HTTP/1.1" 3207 0.059 12.70 *.*.*.*
Nov 07 10:48:59 vps.robbast.nl nginx[10323]: dump.robbast.nl 200 "GET /tmp.json HTTP/1.1" 3207 0.059 12.70 *.*.*.*
Nov 07 10:49:35 vps.robbast.nl nginx[10323]: dump.robbast.nl 200 "GET /tmp.json HTTP/1.1" 3207 0.059 12.70 *.*.*.*
Nov 07 10:49:36 vps.robbast.nl nginx[10323]: dump.robbast.nl 200 "GET /tmp.json HTTP/1.1" 3207 0.058 12.70 *.*.*.*
Nov 07 10:49:37 vps.robbast.nl nginx[10323]: dump.robbast.nl 200 "GET /tmp.json HTTP/1.1" 3207 0.060 12.70 *.*.*.*
Nov 07 10:51:01 vps.robbast.nl nginx[10323]: dump.robbast.nl 200 "GET /tmp.json HTTP/1.1" 3207 0.057 12.70 *.*.*.*
Nov 07 10:51:02 vps.robbast.nl nginx[10323]: dump.robbast.nl 200 "GET /tmp.json HTTP/1.1" 3207 0.056 12.70 *.*.*.*
Nov 07 10:51:04 vps.robbast.nl nginx[10323]: dump.robbast.nl 200 "GET /tmp.json HTTP/1.1" 3207 0.060 12.70 *.*.*.*
Nov 07 10:51:05 vps.robbast.nl nginx[10323]: dump.robbast.nl 200 "GET /tmp.json HTTP/1.1" 3207 0.057 12.70 *.*.*.*
Nov 07 10:51:05 vps.robbast.nl nginx[10323]: dump.robbast.nl 200 "GET /tmp.json HTTP/1.1" 3207 0.061 12.70 *.*.*.*
Nov 07 10:51:06 vps.robbast.nl nginx[10323]: dump.robbast.nl 200 "GET /tmp.json HTTP/1.1" 3207 0.057 12.70 *.*.*.*
Nov 07 10:51:07 vps.robbast.nl nginx[10323]: dump.robbast.nl 200 "GET /tmp.json HTTP/1.1" 3207 0.059 12.70 *.*.*.*
Nov 07 10:51:07 vps.robbast.nl nginx[10324]: dump.robbast.nl 200 "GET /tmp.json HTTP/1.1" 3207 0.060 12.70 *.*.*.*
Nov 07 10:51:08 vps.robbast.nl nginx[10324]: dump.robbast.nl 200 "GET /tmp.json HTTP/1.1" 3207 0.055 12.70 *.*.*.*
Nov 07 10:51:09 vps.robbast.nl nginx[10324]: dump.robbast.nl 200 "GET /tmp.json HTTP/1.1" 3207 0.059 12.70 *.*.*.*
Nov 07 10:51:09 vps.robbast.nl nginx[10324]: dump.robbast.nl 200 "GET /tmp.json HTTP/1.1" 3207 0.057 12.70 *.*.*.*
Nov 07 10:51:10 vps.robbast.nl nginx[10324]: dump.robbast.nl 200 "GET /tmp.json HTTP/1.1" 3207 0.059 12.70 *.*.*.*
Nov 07 10:51:11 vps.robbast.nl nginx[10324]: dump.robbast.nl 200 "GET /tmp.json HTTP/1.1" 3207 0.055 12.70 *.*.*.*
Nov 07 10:51:35 vps.robbast.nl nginx[10324]: dump.robbast.nl 200 "GET /tmp.json HTTP/1.1" 3207 0.057 12.70 *.*.*.*
Nov 07 10:51:52 vps.robbast.nl nginx[10323]: dump.robbast.nl 200 "GET /tmp.json HTTP/1.1" 3207 0.060 12.70 *.*.*.*
Nov 07 10:51:52 vps.robbast.nl nginx[10323]: dump.robbast.nl 200 "GET /tmp.json HTTP/1.1" 3207 0.055 12.70 *.*.*.*
Nov 07 10:51:52 vps.robbast.nl nginx[10323]: dump.robbast.nl 200 "GET /tmp.json HTTP/1.1" 3207 0.060 12.70 *.*.*.*
Nov 07 10:51:53 vps.robbast.nl nginx[10323]: dump.robbast.nl 200 "GET /tmp.json HTTP/1.1" 3207 0.057 12.70 *.*.*.*
Nov 07 10:51:53 vps.robbast.nl nginx[10323]: dump.robbast.nl 200 "GET /tmp.json HTTP/1.1" 3207 0.058 12.70 *.*.*.*
Nov 07 10:51:53 vps.robbast.nl nginx[10323]: dump.robbast.nl 200 "GET /tmp.json HTTP/1.1" 3207 0.059 12.70 *.*.*.*
Nov 07 10:51:53 vps.robbast.nl nginx[10323]: dump.robbast.nl 200 "GET /tmp.json HTTP/1.1" 3207 0.060 12.70 *.*.*.*
Nov 07 10:51:54 vps.robbast.nl nginx[10323]: dump.robbast.nl 200 "GET /tmp.json HTTP/1.1" 3207 0.058 12.70 *.*.*.*
Nov 07 10:51:54 vps.robbast.nl nginx[10323]: dump.robbast.nl 200 "GET /tmp.json HTTP/1.1" 3207 0.057 12.70 *.*.*.*
Nov 07 10:51:54 vps.robbast.nl nginx[10323]: dump.robbast.nl 200 "GET /tmp.json HTTP/1.1" 3207 0.059 12.70 *.*.*.*
Nov 07 10:51:54 vps.robbast.nl nginx[10323]: dump.robbast.nl 200 "GET /tmp.json HTTP/1.1" 3207 0.056 12.70 *.*.*.*
Nov 07 10:51:55 vps.robbast.nl nginx[10323]: dump.robbast.nl 200 "GET /tmp.json HTTP/1.1" 3207 0.058 12.70 *.*.*.*
Nov 07 10:51:55 vps.robbast.nl nginx[10323]: dump.robbast.nl 200 "GET /tmp.json HTTP/1.1" 3207 0.059 12.70 *.*.*.*
Nov 07 10:51:55 vps.robbast.nl nginx[10323]: dump.robbast.nl 200 "GET /tmp.json HTTP/1.1" 3207 0.057 12.70 *.*.*.*
Nov 07 10:51:55 vps.robbast.nl nginx[10323]: dump.robbast.nl 200 "GET /tmp.json HTTP/1.1" 3207 0.057 12.70 *.*.*.*
Nov 07 10:51:55 vps.robbast.nl nginx[10323]: dump.robbast.nl 200 "GET /tmp.json HTTP/1.1" 3207 0.056 12.70 *.*.*.*
Nov 07 10:51:56 vps.robbast.nl nginx[10323]: dump.robbast.nl 200 "GET /tmp.json HTTP/1.1" 3207 0.058 12.70 *.*.*.*
Nov 07 10:51:56 vps.robbast.nl nginx[10323]: dump.robbast.nl 200 "GET /tmp.json HTTP/1.1" 3207 0.060 12.70 *.*.*.*
Nov 07 10:51:56 vps.robbast.nl nginx[10323]: dump.robbast.nl 200 "GET /tmp.json HTTP/1.1" 3207 0.055 12.70 *.*.*.*
Nov 07 10:51:56 vps.robbast.nl nginx[10323]: dump.robbast.nl 200 "GET /tmp.json HTTP/1.1" 3207 0.057 12.70 *.*.*.*
Nov 07 10:51:56 vps.robbast.nl nginx[10323]: dump.robbast.nl 200 "GET /tmp.json HTTP/1.1" 3207 0.058 12.70 *.*.*.*
Nov 07 10:51:57 vps.robbast.nl nginx[10323]: dump.robbast.nl 200 "GET /tmp.json HTTP/1.1" 3207 0.058 12.70 *.*.*.*
Nov 07 10:51:57 vps.robbast.nl nginx[10323]: dump.robbast.nl 200 "GET /tmp.json HTTP/1.1" 3207 0.056 12.70 *.*.*.*
Nov 07 10:51:57 vps.robbast.nl nginx[10323]: dump.robbast.nl 200 "GET /tmp.json HTTP/1.1" 3207 0.057 12.70 *.*.*.*
Nov 07 10:51:57 vps.robbast.nl nginx[10323]: dump.robbast.nl 200 "GET /tmp.json HTTP/1.1" 3207 0.057 12.70 *.*.*.*
Nov 07 10:51:58 vps.robbast.nl nginx[10323]: dump.robbast.nl 200 "GET /tmp.json HTTP/1.1" 3207 0.059 12.70 *.*.*.*
Nov 07 10:51:58 vps.robbast.nl nginx[10323]: dump.robbast.nl 200 "GET /tmp.json HTTP/1.1" 3207 0.061 12.70 *.*.*.*
Nov 07 10:51:58 vps.robbast.nl nginx[10323]: dump.robbast.nl 200 "GET /tmp.json HTTP/1.1" 3207 0.058 12.70 *.*.*.*
Nov 07 10:51:58 vps.robbast.nl nginx[10323]: dump.robbast.nl 200 "GET /tmp.json HTTP/1.1" 3207 0.058 12.70 *.*.*.*
Nov 07 10:51:59 vps.robbast.nl nginx[10323]: dump.robbast.nl 200 "GET /tmp.json HTTP/1.1" 3207 0.060 12.70 *.*.*.*
Nov 07 10:51:59 vps.robbast.nl nginx[10323]: dump.robbast.nl 200 "GET /tmp.json HTTP/1.1" 3207 0.057 12.70 *.*.*.*
Nov 07 10:51:59 vps.robbast.nl nginx[10323]: dump.robbast.nl 200 "GET /tmp.json HTTP/1.1" 3207 0.061 12.70 *.*.*.*
Nov 07 10:51:59 vps.robbast.nl nginx[10323]: dump.robbast.nl 200 "GET /tmp.json HTTP/1.1" 3207 0.058 12.70 *.*.*.*
Nov 07 10:52:00 vps.robbast.nl nginx[10323]: dump.robbast.nl 200 "GET /tmp.json HTTP/1.1" 3207 0.059 12.70 *.*.*.*
Nov 07 10:52:00 vps.robbast.nl nginx[10323]: dump.robbast.nl 200 "GET /tmp.json HTTP/1.1" 3207 0.059 12.70 *.*.*.*
Nov 07 10:52:00 vps.robbast.nl nginx[10323]: dump.robbast.nl 200 "GET /tmp.json HTTP/1.1" 3207 0.058 12.70 *.*.*.*
Nov 07 10:52:00 vps.robbast.nl nginx[10323]: dump.robbast.nl 200 "GET /tmp.json HTTP/1.1" 3207 0.059 12.70 *.*.*.*
Nov 07 10:52:01 vps.robbast.nl nginx[10323]: dump.robbast.nl 200 "GET /tmp.json HTTP/1.1" 3207 0.061 12.70 *.*.*.*
Nov 07 10:52:01 vps.robbast.nl nginx[10323]: dump.robbast.nl 200 "GET /tmp.json HTTP/1.1" 3207 0.059 12.70 *.*.*.*
Nov 07 10:52:01 vps.robbast.nl nginx[10323]: dump.robbast.nl 200 "GET /tmp.json HTTP/1.1" 3207 0.056 12.70 *.*.*.*
Nov 07 10:52:01 vps.robbast.nl nginx[10323]: dump.robbast.nl 200 "GET /tmp.json HTTP/1.1" 3207 0.060 12.70 *.*.*.*
Nov 07 10:52:02 vps.robbast.nl nginx[10323]: dump.robbast.nl 200 "GET /tmp.json HTTP/1.1" 3207 0.060 12.70 *.*.*.*
Nov 07 10:52:02 vps.robbast.nl nginx[10323]: dump.robbast.nl 200 "GET /tmp.json HTTP/1.1" 3207 0.055 12.70 *.*.*.*
Nov 07 10:52:02 vps.robbast.nl nginx[10323]: dump.robbast.nl 200 "GET /tmp.json HTTP/1.1" 3207 0.055 12.70 *.*.*.*
Nov 07 10:52:02 vps.robbast.nl nginx[10323]: dump.robbast.nl 200 "GET /tmp.json HTTP/1.1" 3207 0.060 12.70 *.*.*.*
Nov 07 10:52:02 vps.robbast.nl nginx[10323]: dump.robbast.nl 200 "GET /tmp.json HTTP/1.1" 3207 0.058 12.70 *.*.*.*
Nov 07 10:52:03 vps.robbast.nl nginx[10323]: dump.robbast.nl 200 "GET /tmp.json HTTP/1.1" 3207 0.058 12.70 *.*.*.*
Nov 07 10:52:03 vps.robbast.nl nginx[10323]: dump.robbast.nl 200 "GET /tmp.json HTTP/1.1" 3207 0.057 12.70 *.*.*.*
Nov 07 10:52:03 vps.robbast.nl nginx[10323]: dump.robbast.nl 200 "GET /tmp.json HTTP/1.1" 3207 0.054 12.70 *.*.*.*
Nov 07 10:52:03 vps.robbast.nl nginx[10323]: dump.robbast.nl 200 "GET /tmp.json HTTP/1.1" 3207 0.059 12.70 *.*.*.*

Ich bin mir nicht sicher, was der Größenunterschied zwischen den ersten Anfragen und den letzteren verursacht hat.

Ich habe den Befehl auch mit der Nicht-Gzip-Ausgabe ausgeführt (als ich festgestellt habe, dass ich nicht mit Ihrer URL getestet habe).

Ah, das müssen die ersten Anfragen gewesen sein.

Ich erhalte auch zwei Arten von Anfragen in den packagist.org-Protokollen von Ihrer IP:

[07/Nov/2016:09:50:39 +0000] "GET /p/paragonie/random_compat%24f49f654e75ef0944f24b3ffb74b531f0f5a757a807bcbda5b511b85d41ff7dcb.json HTTP/1.1" 200 40586 "-" "Composer/1.2.1 (Linux; 3.13.0-86-generic; PHP 7.0.12)"

[07/Nov/2016:09:50:52 +0000] "GET /p/paragonie/random_compat%24f49f654e75ef0944f24b3ffb74b531f0f5a757a807bcbda5b511b85d41ff7dcb.json HTTP/1.1" 200 3207 "-" "Composer/1.2.1 (Linux; 3.13.0-86-generic; PHP 7.0.12)"

Dieselben Größen wie auf dem Server von

Sieht wirklich nach einem Netzwerkproblem aus. Mein Server ist in Amsterdam (NL), während Packagist irgendwo in Frankreich ist, wenn ich mich nicht irre?

Wenn ich den Test mit application/json;text/plain (und die Dekodierung mit json_decode und auf null teste), habe ich den gleichen Fehler auf dem Packagist-Server.

Ich habe folgende Größe erhalten, in dieser Reihenfolge:

  • 38KB
  • 33KB
  • 40 KB (Erfolg)

Es sind die letzten 3 Anfragen, die Sie mit meiner IP auf Ihrem Server haben sollten.

Hast du die mit strace betrieben? Haben Sie die Fehler beim Zurücksetzen der Verbindung bei den kleineren Größen und nicht bei der erfolgreichen Anfrage erhalten?

@magnetik kannst du es auch mit https:// auf packagist versuchen? Und versuchen Sie es mit http:// auf dem Server von @alcohol ? Denn das ist der einzige Unterschied, den ich hier sehe, dass Sie https auf seinem und http auf packagist verwendet haben. Wenn das das Problem löst, verwenden Sie composer config -g repo.packagist composer https://packagist.org , um https immer auf packagist zu erzwingen. Das löst tendenziell schlechte Proxys und schnüffelnde Netzwerke, die den Datenverkehr durcheinander bringen.

@alcohol running strace auf packagist, mit http und Klartext. Ich sehe das Zurücksetzen der Verbindung nicht: https://gist.github.com/magnetik/82a9d1d9c34401b6268ba07a949cc491#file -strace_http_packagist_plain-txt

Aber die folgenden Schreibgrößen: 8192 + 8192 + 8192 + 8192 + 4621 = 37389
Und wenn der Erfolg : 8192 + 8192 + 8192 + 8192 + 7818= 40586

@Seldaek Wenn Sie https mit gzip verwenden und 50 Tests

Wenn https das Problem löst, ist das sowohl gut als auch beängstigend :p

@Seldaek Ich habe vergessen, dass ich https auf meinem Server erzwinge. Er kann also nicht mit http auf meinem testen.

Nun, es lief 50 Mal erfolgreich, dann habe ich versucht, Composer Update bei einem Problem auszuführen, und habe einen Fehler erhalten.

Beim Testen mit der URL https://packagist.org/p/lncd/oauth2%244010b595abf2d3c3a38b84ffd41f6a4a1587c4a54886559347b686a5e0116355.json habe ich auch den Fehler: Retry 0 | PHP Warning: file_get_contents(): SSL: Connection reset by peer

Dieser verdammte Peer..

Wird die Verbindung ständig zurückgesetzt?

Ich habe die tmp.json Datei, die ich gehostet habe, aktualisiert, damit sie mit der oauth-Datei identisch ist. Sie können versuchen, zwischen der von Packagist gehosteten Datei und meinem Server zu variieren, um festzustellen, ob es einen Unterschied gibt.

5 Anfragen schlagen über 20 fehl.

Und auf meinem Host?

Genauso, vielleicht etwas weniger, ich hatte 3 Fehler bei 35 Anfragen

Seltsam, kann es selbst nicht reproduzieren. Ich sehe alle Ihre Anfragen und sie scheinen alle erfolgreich zu sein (vorausgesetzt, das Zurücksetzen der Verbindung erfolgt nach der Verbindung). Ich zähle 56 Anfragen.

Wenn ich curl direkt verwende, habe ich immer die gleiche Größe:
curl https://packagist.org/p/lncd/oauth2%244010b595abf2d3c3a38b84ffd41f6a4a1587c4a54886559347b686a5e0116355.json 2>/dev/null | wc -m

Angesichts der Tatsache, dass virtualbox 5.1.6 das Problem nicht hatte, sollte es etwas auf dieser Seite sein, das die Verbindung zu früh schließt.

curl verwendet jedoch standardmäßig kein gzip, und möglicherweise sind andere Parameter anders. Versuchen Sie zumindest mit --compressed gzip zu aktivieren.

Ich habe eine Antwort von virtualbox, und sie scheint auf ihrer Seite zu sein: https://forums.virtualbox.org/viewtopic.php?f=3&t=80396#p377627

Vielen Dank für den Input, der es ermöglichte, das Problem auf ihrer Seite zu lokalisieren.

Lassen Sie uns die Diskussion dort fortsetzen.

Ich hatte das gleiche Problem. Das Downgrade von VirtualBox auf Version 5.0.26 wurde behoben.

Host:
Windows 8.1 Pro
VirtualBox: VirtualBox-5.1.8          <- IT DOES NOT WORK
VirtualBox: Version 5.0.26 r108824    <- IT WORKS
Guest:
Ubuntu 16.04.1 LTS
PHP: PHP 5.6.27-1+deb.sury.org~xenial+1 (cli)

Einige Mitwirkende sollten diese Lösung in der Ausgabe #4121 (Kommentare sind geschlossen) sichtbarer hinzufügen. Google weist Sie zuerst auf das andere Problem hin.

Zumindest können wir hier auf #4121 verweisen.

Das Problem ist für mich für die zu veröffentlichende Virtualbox 5.1.9 behoben.

Sie können es selbst ausprobieren mit Virtualbox Testbuild > 111846 https://www.virtualbox.org/wiki/Testbuilds

@magnetik , habe es auch selbst bestätigt. VirtualBox 5.1.9-Entwicklungsbuild hat mein Problem behoben. Danke an alle!

Jesus Christus!
Wie wirkt sich die Virtualbox-Version auf composer update ??? Ich muss meine Vagrant-Box immer wieder neu installieren, bis ich dieses Problem gefunden habe....

VirtualBox 5.0.28 sollte von der Erde entfernt werden. Danke Oracle.

@hectornguyen Virtualbox hatte einen Fehler, der den HTTP-Verkehr mit Gzip
Und composer update kann HTTP-Anfragen an Server stellen, die Gzip für die JSON-Antworten verwenden.

Dies funktioniert jetzt nach dem Upgrade auf VirtualBox 5.0.30 bei mir einwandfrei, es sieht also so aus, als hätte Oracle es jetzt behoben.

Virtualbox 5.0.30 r112061 hat in meinem Fall gut funktioniert ...

Virtualbox 5.1.14 r112924 (derzeit die neueste Version) funktioniert auch

Ich habe immer noch dieses Problem mit 5.1.22 r115126 auf Windows-Host

War diese Seite hilfreich?
0 / 5 - 0 Bewertungen

Verwandte Themen

antoscarface picture antoscarface  ·  3Kommentare

tom-- picture tom--  ·  3Kommentare

FabioQ picture FabioQ  ·  3Kommentare

GNSubrahmanyam picture GNSubrahmanyam  ·  3Kommentare

ghost picture ghost  ·  3Kommentare