Bei der Verwendung des Composer-Abhängigkeitsmanagers für PHP treten bei der Verwendung des EC2-Dienstes von Amazon gelegentlich Fehler auf. Für dieses Problem gibt es ein einfaches Update.
Beim Versuch, Symfony2 auf einer EC2-Instanz zu installieren, habe ich kürzlich den folgenden Fehler gefunden:
"Nicht erfasste Ausnahme 'ErrorException' mit der Nachricht 'proc_open (): Gabelung fehlgeschlagen - Speicher kann nicht zugewiesen werden' in phar…"
Beim Debuggen dieses Problems stellte ich fest, dass bei vielen Menschen dasselbe Problem auftrat. In der Regel tritt dies auf, wenn Composer.phar für a verwendet wird t1.micro-Instanz. Der geringe Speicherbedarf dieser Instanz hat nicht genügend Auslagerungsspeicher, damit Composer.phar ordnungsgemäß ausgeführt werden kann.
Erhöhen Sie die Instanzgröße
Um dieses Problem zu beheben, ändern Sie Ihre Instanz vorübergehend in eine größere Instanz. Sie können dies tun, indem Sie die Instanz stoppen und dann auswählen Instanztyp ändern von dem Aktionen Speisekarte. Möglicherweise müssen Sie Ihre IP-Adresse und Ihre Sicherheit je nach Konfiguration anpassen.
Nachdem Sie Ihre Instanzfähigkeiten erweitert haben, verwenden Sie composer.phar, um Ihre PHP-Daten zu installieren. Wenn Sie fertig sind, können Sie die Instanz anhalten und erneut herunterstufen, wenn Sie Geld sparen möchten. Wieder müssen Sie möglicherweise Ihre IP-Adresse und Sicherheitseinstellungen ändern.
Erhöhen Sie die PHP-Limits
Alternativ können Sie Ihr PHP memory_limit auf mindestens 256 MB erhöhen. Dies gibt PHP oft genug freien Speicherplatz, um Composer ohne Fehler auszuführen.