2016-03-19 9 views
5

Ich brauche Komponist Update laufen bei meinem Hosting so mit ssh ich anmelden und versuchen comand auszuführen:Composer Update Speicherlimit

composer update 

innen/www Ordner, in dem ich Laravel und Komponisten Instalation

haben aber ich bekomme Fehler: enter image description here

in Kontakt mit meinem Hosting-Provider sie mir sagen Befehl auszuführen:

php -d memory_limit=512M composer update 

Ich führe diesen Befehl, aber ich bekomme: "Konnte Datei nicht öffnen: Composer"

Was ist zu tun? Was ist die Lösung hier?

+1

Wie @Sven sagte, in der Produktion 'Composer Installation' ist genug. In deinem Fall, während du ein Shared Hosting verwendest, denke ich, dass du 'composer update' nicht funktionierst, also kaufe nur ein VPS-Hosting wie Digital Ocean, Linode. – Lucas

Antwort

12

Wenn Sie composer update ausführen, sucht das Betriebssystem in den konfigurierten Pfaden und versucht, eine ausführbare Datei mit diesem Namen zu finden.

Wenn php composer update ausgeführt wird, wird die Zeichenfolge composer als Parameter für PHP behandelt, der in keinem Pfad gesucht wird. Sie müssen den vollständigen Pfad angeben, um es auszuführen.

which composer Laufen wird Ihnen sagen, wo das Betriebssystem den Komponisten ausführbare findet, und dann verwenden Sie einfach den vollständigen Pfad in der PHP-Befehl:

$>which composer 
/usr/local/bin/composer 

$>php -d memory_limit=512M /usr/local/bin/composer update 
... 

Beachten Sie, dass 512MB könnte zu wenig sein. Meine Wahrnehmung ist, dass es glücklich 1GB oder mehr dauert, abhängig von der Anzahl der Abhängigkeiten und der Vielfalt der Versionen, die Sie theoretisch erlauben, dh wenn Sie Symfony ~2.3 erlauben, dann machen Sie Composer mit viel mehr möglichen Versionen im Vergleich zu mit ~2.7.

Beachten Sie auch, dass das Ausführen von Composer auf der Produktionsmaschine nicht die beste Idee ist. Sie müssten Zugriff auf Github haben, Zugangsdaten bereitstellen, VCS-Tools installiert haben und Ihre Site könnte leicht beschädigt werden, wenn einer der Remote-Hosting-Server während des Updates offline ist. Es empfiehlt sich, Composer auf einem Bereitstellungssystem zu verwenden, das die gesamte Vorbereitung durchführt, und dann alle Dateien auf den Produktionsserver zu verschieben.

+0

Ich weiß nur: php -r "readfile ('https://getcomposer.org/installer');" | php und danach funktioniert alles gut ... auch THANS FOR HELP – Andrew

+0

Es funktioniert für mich! Danke für Ihre Hilfe. – mapaladiya

Verwandte Themen