Probleme bei der Einrichtung von cronjobs

Hallo, wir haben shopware Pro 3.5.3 auf einem Host Europe Virtual Server installiert, bekommen aber die Cronjobs nicht zum Laufen. Die Help-Seiten und das Durchstöbern des Forums haben mir nicht weitergeholfen. Bei Host Europe kann man mehrere Cronjobs einrichten, indem man die auszuführende Datei mit Pfad ab dem Basispfad angibt. Host Europe erläutert: [quote]Über den Punkt “Befehl” können Sie den Pfad eines auszuführendem Programmes oder Skriptes angeben. Der Befehl wird relativ zum Pfad des Stammverzeichnises angegeben. Bitte beachten Sie hierbei - dass das Skript ausführbar (eXecutable) sein muss. Achten Sie bitte ebenfalls auf die Rechtevergabe. - der zuständige Interpreter (sog. “shebang”, z.B. für PHP “#!/usr/bin/php” oder /usr/local/bin/php) muss in der ersten Zeile des Skripts angegeben sein. Wichtig: Bitte beachten Sie, dass Sie innerhalb Ihrer Skripte auch absolute Pfade benutzen müssen, die auf /is/htdocs/wpxxxxxxx_xxxxxxxxx/ verweisen.[/quote] Meine Fragen: [list] Besteht grundsätzlich die Möglichkeit, die cronjobs auf einem HE Server zum Laufen zu bringen? [/list] [list] Welche Datei mit Pfad muss bei der Version 3.5 genau angegeben werden? [/list] Danke!

Die Cronjobs kannst Du doch bei den Plugins aktivieren. Und beim Versand Newsletter besteht momentan noch ein Problem in der neuen Version lt. Shopware. Den manuellen Cronjob mehrmals aufrufen, bis der kompletten Versand der Newsletter abgeschlossen ist. Gruß Petra

Hi, hier findest du die grundlegenden Infos, auch mit Beispielen. Aufruf Konsole oder direkt per Link. Zudem findest du unten auf der Seite die beiden neuen URLs für Shopware ab Version 3.5 http://www.shopware.de/wiki/Shopware-Cr … l_461.html Zudem musst du die gewünschten Cronjob Plugins im Backend aktivieren. Der allgemeine Aufruf erfolgt über diese Adresse: http://www.meinshop.de/shopware.php?module=backend&controller=cron oder so z.B. (Konsolenaufruf) php5 /var/www/shopware.php module=backend controller=cron Falls dir das noch nicht hilft, kann der Support des Hosters dir das ggf. auch einrichten, bzw. die genaue Einrichtung erläutern. :shopware:ebastian

Sebastian, danke für die schnelle Antwort. Hab’ das schon alles gelesen und probiert, aber es funktioniert leider nicht. Wenn ich bei HE [quote]/meinshop-pfad/shopware.php?module=backend&controller=cron[/quote] wird die Datei nicht gefunden. :frowning: Ich benötige anscheinend eine ausführbare php-Datei (Rechte 755) mit dem Befehl “#!/usr/bin/php” in der ersten Zeile. Welche Datei nehm’ ich dazu her?

Kann bei dem Thema keiner weiterhelfen?

Hey, du müsstest das so eingeben können: /usr/bin/php /meinshop-pfad/shopware.php module=backend controller=cron

Hi, wie heisst eigentlich die Adresse für den „Lagerbestand Warnung“-Cronjob? Finde ich nirgends. Gruß Peter

[quote=„RobertW“][quote=„Stefan Hamann“]Hey, du müsstest das so eingeben können: /usr/bin/php /meinshop-pfad/shopware.php module=backend controller=cron [/quote][/quote] Hatte ursprünglich den ersten Teil des Codes „/usr/bin/php“ vergessen. Jetzt habe ich genau die oben angegebene Code-Zeile (meinshop-pfad natürlich angepasst) verwendet. Es funktioniert nicht! Die Fehlermeldung lautet: /bin/sh: /is/htdocs/wp10....F/usr/bin/php: No such file or directory:frowning:

Hey, dann heißt die Binary bei dir anders - kannst du mal den Provider fragen, wie der genaue Pfad zu den PHP-Binaries ist. Ansonsten mach einfach eine Kopie der shopware.php, also z.B. shopcli.php - dort ganz oben, dann die Zeile zum Interpreter eintragen (wie vom Provider vorgeschlagen) und diese dann per Cronjob aufrufen (Die Parameter module und controller müssen dann aber trotzdem noch übergeben werden)

1 Like

Unter Linux zeigt which php5 den Pfad zu Deinem php5 Executable an.

[quote=“Stefan Hamann”]Hey, . . . Ansonsten mach einfach eine Kopie der shopware.php, also z.B. shopcli.php - dort ganz oben, dann die Zeile zum Interpreter eintragen (wie vom Provider vorgeschlagen) und diese dann per Cronjob aufrufen (Die Parameter module und controller müssen dann aber trotzdem noch übergeben werden)[/quote] Hallo, wir sind einen Schritt weiter, der oben gemachte Vorschlag von Stefan funktioniert insoweit, dass der Host Europe Cronjob nicht mehr meckert: - shopware.php kopiert in shopware-neuername.php - in erste Zeile von shopwarem-neuername.php #!/usr/bin/php eingefügt - Dateiberechtigungen shopware-neuername.php auf “755” gesetzt - im HE KIS bei cronjobs meinshop-pfad/shopware-neuername.php module=backend controller=cron eingetragen. Irgendwelche Nebeneffekte konnte ich bisher nicht beobachten. :thumbup:

Da hab’ ich mich zu freu gefreut. Jetzt habe ich heute folgende Fehlermeldungen via Email erhalten (Cron Job bei HOST EUROPE). Wo läuft da was falsch? [quote]exception ‘Zend_Session_Exception’ with message ‘Zend_Session::start() - /is/htdocs/wp1…_…F/meinshop-pfad/engine/Enlight/Vendor/Zend/library/Zend/Db/Table/Abstract.php(Line:826): Error #1024 Failed saving metadata to metadataCache Array’ in /is/htdocs/wp1…_…F/meinshop-pfad/engine/Enlight/Enlight/Zend/Session.php:503 Stack trace: #0 /is/htdocs/wp1…_…F/meinshop-pfad/engine/Shopware/Bootstrap.php(118): Zend_Session::start(Array) #1 /is/htdocs/wp1…_…F/meinshop-pfad/engine/Enlight/Enlight/Bootstrap.php(99): Shopware_Bootstrap->initSession() #2 /is/htdocs/wp1…_…F/meinshop-pfad/engine/Enlight/Enlight/Bootstrap.php(69): Enlight_Bootstrap->loadResource(Array) #3 /is/htdocs/wp1…_…F/meinshop-pfad/engine/Shopware/Shopware.php(69): Enlight_Bootstrap->getResource(‘Session’) #4 /is/htdocs/wp1…_…F/meinshop-pfad/engine/Shopware/Plugins/Default/Core/Shop/Bootstrap.php(22): Shopware->Session(‘Session’) #5 /is/htdocs/wp1…_…F/meinshop-pfad/engine/Enlight/Enlight/Event/EventHandler.php(60): Shopware_Plugins_Core_Shop_Bootstrap::onInitResourceShop() #6 /is/htdocs/wp1…_…F/meinshop-pfad/engine/Enlight/Enlight/Event/EventManager.php(96): Enlight_Event_EventHandler->execute(Object(Enlight_Event_EventArgs)) #7 /is/htdocs/wp1…_…F/meinshop-pfad/engine/Enlight/Enlight/Bootstrap.php(96): Enlight_Event_EventManager->notifyUntil(‘Shopware_Plugin…’, Object(Enlight_Event_EventArgs)) #8 /is/htdocs/wp1…_…F/meinshop-pfad/engine/Enlight/Enlight/Bootstrap.php(57): Enlight_Bootstrap->loadResource(Object(Enlight_Event_EventArgs)) #9 /is/htdocs/wp1…_…F/meinshop-pfad/engine/Enlight/Enlight/Application.php(289): Enlight_Bootstrap->hasResource(‘Enlight_Bootstr…’, Array) #10 /is/htdocs/wp1…_…F/meinshop-pfad/engine/Shopware/Plugins/Default/Core/Shop/Bootstrap.php(44): Enlight_Application->__call(‘Shop’) #11 /is/htdocs/wp1…_…F/meinshop-pfad/engine/Shopware/Plugins/Default/Core/Shop/Bootstrap.php(44): Shopware->Shop(‘Shop’) #12 /is/htdocs/wp1…_…F/meinshop-pfad/engine/Enlight/Enlight/Event/EventHandler.php(60): Shopware_Plugins_Core_Shop_Bootstrap::onPreDispatch(‘Shop’, Array) #13 /is/htdocs/wp1…_…F/meinshop-pfad/engine/Enlight/Enlight/Event/EventManager.php(70): Enlight_Event_EventHandler->execute() #14 /is/htdocs/wp1…_…F/meinshop-pfad/engine/Enlight/Enlight/Controller/Front.php(75): Enlight_Event_EventManager->notify(Object(Enlight_Event_EventArgs)) #15 /is/htdocs/wp1…_…F/meinshop-pfad/engine/Shopware/Bootstrap.php(21): Enlight_Controller_Front->dispatch(‘Shopware_Plugin…’, Object(Enlight_Event_EventArgs)) #16 /is/htdocs/wp1…_…F/meinshop-pfad/engine/Enlight/Enlight/Application.php(69): Shopware_Bootstrap->run(Object(Enlight_Event_EventArgs)) #17 /is/htdocs/wp1…_…F/meinshop-pfad/shopxtyrm.php(7): Enlight_Application->run(‘Enlight_Control…’, Array) #18 {main} [/quote]:frowning: Die Einrichtung bei Host Europe habe ich im letzten Eintrag beschrieben. Warum verträgt sich das nicht? Andere Cron Jobs laufen schließlich auch.

Hi, wahrscheinlich wird das Script einfach nur mit den falschen Rechten ausgeführt. Daher können die Daten auch nicht im Cache-Ordner abgelegt werden. Du kannst das Problem aber dadurch umgehen, dass du nicht das CronJob-Script selber ausführst, sondern einen Script ausführst der diesen Script per HTTP aufruft. Dieses Script könnte z.B. so aussehen: [code]#!/usr/bin/php

1 Like

Vielen Dank, Heiner. [quote=“rocky”] Dieses Script könnte z.B. so aussehen: [code]#!/usr/bin/php

Nö, beides sollte gehen. :wink:

[quote=“rocky”]Nö, beides sollte gehen. ;)[/quote] Ich probier’s aus und melde mich, wenn die Jobs durchlaufen. Danke:thumbup:

“rocky” hat die Lösung des Cron Job Problems. Danke! :thumbup: Auf unserem Host Europe Server laufen jetzt die Jobs. Die Einstellungen - hoffentlich abschließend - für HOST EUROPE VIRTUAL SERVER MANAGED: 1. Neues Script (z.Bsp. “mycronjobs.php”) erstellen: [code]#!/usr/local/bin/php

Hi, ich habe mir soeben bei HE VS den Cronjob für die Lagerbestandwarnung eingerichtet und es scheint soweit zu funktionieren, d.h. der Cronjob wird mir von HE per Mail mit „Processing Shopware_CronJob_ArticleStock“ zurückgemeldet. Leider löst der Shop aber den Versand der E-Mail (Lagerbestandswarnung) an mich nicht aus. Woran könnte das liegen? Im Backend ist bei mir als Empfänger „{$sConfig.sMAIL}“ hinterlegt.

*schieb*…:wink: Hat wirklich niemand eine Idee warum der Mailversand für die Lagerbestandswarnung nicht ausgelöst wird? Die restlichen Mails vom Shop funktionieren alle einwandfrei…