cancel
Showing results for 
Search instead for 
Did you mean: 

Magento 1.9.2.1 Problem mit Cronjob bei 1&1 Hosting

Magento 1.9.2.1 Problem mit Cronjob bei 1&1 Hosting

Hallo zusammen,

 

ich habe das leider bereits im Netz mehrfach diskutierte Problem, dass ich den Magento Cronjob nicht zum laufen bekomme und somit keine Bestell-Emails versandt werden. Wie im Betreff bereits geschrieben haben wir Magento 1.9.2.1 im EInsatz und hosten bei 1&1. Das Problem lässt sich folgendermaßen einkreisen:

 

- wenn ich über den Crontab einen simplen Test-Cronjob aufrufe, funktioniert das und der Job wird korrekt ausgeführt, das heißt, das grundsätzliche Shell Kommando im Crontab dürfte richtig formuliert sein und auch der absolute Pfad ist korrekt:
*/2 * * * * /usr/bin/php5 /kunden/homepages/0/XXXXXXXX/htdocs/Shopname/crontest.php

 

- wenn ich den "richtigen" Magento-Cronjob manuell ausführe (cron.php im Browser aufrufen) funktioniert auch das und alle E-Mail-Benachrichtigungen, die zuvor in der Warteschleife hingen werden schlagartig versendet.

 

Nur das Zusammenspiel funktioniert nicht. Sobald ich die Datei cron.php nicht manuell sondern über den Crontab aufrufe (mit gleichem Kommando wie oben beim Test-Cronjob, nur eben auf die richtige Datei bezogen) klappt es nicht und es passiert gar nichts (Wenn ich mir die E-Mail-Benachrichtigungen schicken lasse erhalte ich Fehlermeldungen über Syntax-Fehler:

 

X-Powered-By: PHP/5.2.17
Content-type: text/html

<br />
<b>Parse error</b>:  syntax error, unexpected T_FUNCTION in <b>/homepages/0/XXXXXXXX/htdocs/Shopname/app/code/core/Mage/Core/Helper/Abstract.php</b> on line <b>240</b><br />

 

Merkwürdig finde ich hier dass es mir in dieser Benachrichtigung PHP 5.2.17 angibt, aber für das Magento Web bei 1&1 übers Kundenmenü 5.6 eingerichtet wurde.

 

Auch Alternativ die cron.sh über den Crontab ansprechen hilft nicht, wenn ich es mit:

*/2 * * * * /usr/bin/sh /kunden/homepages/0/XXXXXXXX/htdocs/Shopname/cron.sh versuche bekomme ich folgende Fehlermeldung:

/kunden/homepages/0/XXXXXXXX/htdocs/Shopname/cron.sh: line 26: $'\r': command not found
/kunden/homepages/0/XXXXXXXX/htdocs/Shopname/cron.sh: line 54: syntax error: unexpected end of file

 

obwohl ich zuvor in der cron.sh den Pfad zu PHP 5 gemäß den Tipps aus dem Netz eingetragen habe: PHP_BIN='/usr/bin/php5'

 

Hat irgendjemand noch einen hilfreichen Tipp. Ich habe das Problem über Google zwar mehrfach gefunden aber sämtliche publizierten Lösungsvorschläge haben mich nicht weitergebracht!

 

Danke euch im Voraus!

Viele Grüße

4 REPLIES 4

Re: Magento 1.9.2.1 Problem mit Cronjob bei 1&1 Hosting

Es gibt mehrere Konfigurationsdateien für PHP.

Eine wird benutzt wenn der Seitenaufruf "von aussen" über einen browser kommt,

eine andere wird für die CLI benutzt.

Offenbar liegt hier das Problem.

 

1.Wenn es sich um einen unmanaged Server handelt passen Sie die CLI-Konfigurationsdatei an damit die gleiche PHP Version genutzt wird wie über den Webserver.

Wenn es ein managed Server ist machen Sie am besten beim hoster stunk damit der das anpasst.

 

2. Über einen umweg geht es auch ohne Konfigurationsänderung. zB. mit wget oder lynx einen "externen Seitenaufruf" triggern

zB.

wget -q -O /dev/null "https://www.ihre.webseite.de/cron.php"
Mit freundlichen Grüßen, Sebastian Keutmeier
www.keutmeier.de

Re: Magento 1.9.2.1 Problem mit Cronjob bei 1&1 Hosting

 

Leider kann ich dir keine Lösung anbieten, aber ich habe seit ein paar Tagen genau das gleiche Problem.

Magento 1.9.2 + 1und1 Hostingpaket Unlimited Pro, der Shop versendet einfach keine Transaktionsemails. Cronjobs laufen nicht.

 

Hast du mittlerweile eine Lösung gefunden?

 

Viele Grüße

Jürgen

Re: Magento 1.9.2.1 Problem mit Cronjob bei 1&1 Hosting

Für alle anderen, die mit dem gleichen Problem zu kämpfen haben, möchte ich nun hier unsere Lösung posten, die letztlich zum Erfolg geführt hat:

 

SSH Zugang über Putty, dann eingeben: whereis php -> die Pfade aller PHP Versionen werden angezeigt, Pfad der höchtsmöglichen Version auswählen (bei mir war es 5.5), dann eingeben alias php 'usr/bin/php5.5' , dies installiert die gewählte PHP Version auf der Shell. Danach hat eine erneute Abfrage der php Version mit php -v dann die höhere Version angezeigt (zuvor gab php -v 5.2 als Version aus, dann endlich 5.5) und siehe da, der Cron lief und Bestell-Emails werden jetzt zeitnah zugestellt!!!!

 

Im Crontab selbst habe ich auch den Pfad nochmal angegeben:

*/2 * * * * /usr/bin/php5.5 /kunden/homepages/0/XXXXXX/htdocs/Shopname/cron.php

Die Angabe im Crontab alleine reichte jedoch nicht, die Installation via alias php war der Knackpunkt!

 

Danke für den hilfreichen Tipp!!!!!

Re: Magento 1.9.2.1 Problem mit Cronjob bei 1&1 Hosting

Ich korrigiere den Syntax von meiner vorigen Mail:

statt alias php 'usr/bin/php5.5'

muss es heißen alias php='usr/bin/php5.5'