ich möchte gern über die CLI-Konsole in Shopware einige administrative Dinge bearbeiten. Wenige aber gute Erfahrungen habe ich mit dem DUMP ziehen gemacht.
Nun möchte ich in erster Linie diese Befehle ausführen um zukünftig weniger Speicher und Downloadzeiten besonders bei den Backups zu verbrauchen.
,Gern möchte ich auch alle unbenutzen Thumbnails und die nicht benötigte Binäre Ordnerstrucktur löschen weil das einige Tausende scheinbar sind und das Backup ewig dauert. ;(
sw:media:cleanup Sammelt alle unbenutzten Artikelbilder und verschiebt diese in den Papierkorb
Leider bekomme ich eine Fehlermeldung das ein Verzeichnis nicht vorhanden ist.
Wo finde ich eine genaue Anleitung zum Sachverhalt?
So gehe ich in Putty direkt nach der Anmeldung vor. Das Funktioniert einwandfrei.
und erhälst als Antwort, dass es unter diesem Pfad kein php gibt. Was soll man da sagen, keiner weiß den exakten Pfad zur php-binary auf deinem Server. Da musst du wohl beim Hoster nachfragen, wo die php-binary liegt.
Wenn du das aus einem Tutorial vom Hoster kopiert hast, ist der Pfad scheinbar veraltet.
wontfix das ist das ergebnis allerings verstehe ich nicht warum php 4.4.9 angezeigt wird. ich fahre auf 5.6 und benutze auch den ioncube loader 5.6 x86_64
X-Powered-By: PHP/4.4.9
Content-type: text/html
Parse error: syntax error, unexpected T_STRING, expecting T_CONSTANT_ENCAPSED_STRING or '(' in /homepages/xx/d123456789/htdocs/TM/Shop/bin/console on line 30
update auf php 7.0 wäre mal ne möglichkeit einen test zu machen, oder was meint ihr so
PS gibt es immernoch keine möglichkeit 7.2 zu nutzen ?
die verwendete PHP-Version ist bei vielen Hostern auf der Console eine ganz andere als bei den Domains. Die Console ist üblicherweise auch keiner Domain zugeordnet. Woher soll das System dann auch wissen, welche PHP-Version anzuwenden ist.
Also direkt die zu verwendende PHP-Version im Befehl oder Script angeben hilft.
The programs included with the Debian GNU/Linux system are free software;
the exact distribution terms for each program are described in the
individual files in /usr/share/doc/*/copyright.
Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent
permitted by applicable law.
(uiserver):x123456789:~$ /usr/bin/php7.1-cli sw:media:cleanup
Could not open input file: sw:media:cleanup
(uiserver):x123456789:~$
Warum diese Fehlinterpretation? Could not open input file: sw:media:cleanup
hier im Forum unterstützen doch Shopware User wie Du (die bereits Erfahrungen mit bestimmten Dingen haben) eben unerfahrene User wie z.B. mich. Das nennt man Hilfe.
Oben habe ich beschrieben was ich gern machen möchte. Die Anleitung zum Thema habe ich mir Stück für Stück heraus gesucht, leider ist sie nicht komplett schlüssig. Daher suche ich hier Hilfe.
diese Deine Antwort habe ich jetzt schon mehrfach in anderen Beiträgen von Dir gelesen. Leider hilfst du ohne eine Sachkundige Erklärung nicht.
Weder erklärst du warum diese Befehle nicht funktionieren, DU ZEIGST AUCH NICHT DIE ORDNERSTRUCKTUR ZU DEN BEFEHLEN AUF, du behauptest einfach das es pauschal nicht geht.
Bist du ein Shopware zertifizierter Host Anbieter oder arbeitest im Auftrag? Ich verstehe auch nicht was das Buch Linux für Dummis mit einem Hostwechsel zu tun hat.
Versuche doch bitte eine Fachlich fundierte Antwort zu geben statt Unsicherheit zu verbreiten. Dein Kama-Konto profitiert auch davon.
(uiserver):x123456789:~$ /usr/bin/php7.1-cli /kunden/homepages/xx/d123456789/htdocs/TM/Shop/bin/console sw:media:cleanup
Site error: the ionCube PHP Loader needs to be installed. This is a widely used PHP extension for running ionCube protected PHP code, website security and malware blocking.
Please visit get-loader.ioncube.com for install assistance.
Ich habe das ioncube Verzeichnis in meiner Ordnerstrucktur wie empfhlen in /kunden/homepages/xx/d123456789/htdocs/TM/Shop/ioncube/ioncube_loader_lin_7.1.so
Diesen Ordner spreche ich auch für meinen Shop direkt an in der PHP.ini
Muss ich da irgendetwas trennen oder in einer anderen Ordnerstrucktur verpacken?
Mein Befehl lautet nun wie folgt und wirft nun den Fehler zum Ioncube loader heraus. grrrr
Kann ich irgendwo prüfen welches Verzeichnis ich benötige? Gibt es ene Abfrage ob alles korrekt erreichbar ist? Mein Shop läuft seit der Umstellung stabil auf PHP 7.0!
(uiserver):x123456789:~$ /usr/bin/php7.1-cli /kunden/homepages/xx/d123456789/htdocs/TM/Shop/bin/console /kunden/homepages/xx/d123456789/htdocs/TM/Shop/ioncube/ioncube_loader_lin_7.1.so sw:media:cleanup
Site error: the ionCube PHP Loader needs to be installed. This is a widely used PHP extension for running ionCube protected PHP code, website security and malware blocking.
Please visit get-loader.ioncube.com for install assistance.
Schade das es im Backend nicht die Möglichkeiten gibt überflüssige Bilder, Tumpnails und Dateistruckturen zu löschen. Das wäre eine nützliche Erweiterung zum Tumpnail gennerieren.
Sehr schön, du hast also den Pfad für PHP7.1 gefunden. (/usr/bin/php7.1-cli)
Wie du an der Fehlermeldung sehen kannst, läuft Ioncube damit nicht. (Erklärung: https://community.shopware.com/_detail_1927.htmlShopware unterstützt 7.1 und 7.2 mit Ioncube nicht ).
D.h. musst du nun die Version 7.0 auf deinem Server finden. Mit 7.1 wird es nichts.
beim Update auf die 7er version hatte ich das auch gelesen steht ja gleich zum Anfang drin.
ZITAT: _ Achtung! Aktuell werden ionCube verschlüsselte Plugins mit PHP 7.1.x oder PHP 7.2.x noch nicht unterstützt. Der Einsatz von verschlüsselten Plugins ist nur mit PHP 7.0.x möglich!_
Allerdings geht es doch hier nur um die ionCube verschlüsselte Plugins! Wie ist das zu verstehen und warum ist das dann auch bei der Console relevant? Vielleicht kann mal ein Administrator oder Shopware Mitarbeiter bitte etwas dazu sagen.
Na weil die Plugins bei der Console natürlich geladen werden. Auch Plugins können Kommandos wie sw:Media:cleanup hinzufügen. Daher muss auch das CLI-php einen kompatiblen Ioncube-Loader haben, wenn du verschlüsselte Plugins installiert hast.
Gibt es den noch eine andere Möglichkeit automatisiert die unnützen Bilder, Ordner und Thumpnails zul öschen?
Im Grunde bin ich von der Programmierlogik davon ausgegangen das wenn überhaupt das Plugins die CONSOLE aufrufen kann. Das beim Aufrufen der CONSOLE alle verfügbaren Plugins abgefragt werden hat für mich erstmal kein Sinn gemacht. Ich finde da auch keine verlinkung in den Dateien.
Nach meiner Prüfung wird lediglich diese Biblotek geprüft /engine/Library/
Dort sind unter anderem die Enlight, Smarty und TinyMce Plugins zu finden z.B. _\engine\Library\Smarty\sysplugins\ & \engine\Library\Smarty\plugins_ das sind keine verschlüsselten sondern reine PHP oder JavaScript Dateien.
Oder wo ist da der Hacken, sei nicht böse ich möchte es einfach nachvollziehen können dieses Mächtige Gerüst