TYPO3-Testaccount
Testen Sie die aktuellste TYPO3-Version kostenlos und unverbindlich für einen Monat!

Jetzt testen!

Schulungen

jetzt buchen

Cronjob richtig einrichten


Autor Nachricht
Verfasst am: 03. 12. 2008 [10:33]
leof
Themenersteller
Dabei seit: 10.04.2008
Beiträge: 56
Hallo zusammen,
hab schon einige Beiträge zu diesem Thema im Forum gefunden - leider hat mich keiner weiter gebracht.

Hab folgendes Problem:
Wenn ich einen Newletter verschicken möchte steht am Anfang unter "Verstand-Status" in einem grünen Kasten: "Cronjob aktiv"
Nach ein paar Minuten steht dann in einem orangenem Kästchen: "Cronjob prüfen oder Cronjob ist nicht konfiguriert."

Der Link "Versand anstoßen" funktioniert wunder bar. Ist halt etwas nervig bei 500 Mails 10 mal auf den Link klicken zu müssen.

Hab in der Doku nachgelesen - leider wurde ich daraus nicht schlau.
Die Homepage steht jweiland. Hab mal versuch das Skript /typo3cms/dav/typo3conf/ext/direct_mail/res/scripts/dmailerd.phpcron
Anfangs war das Skrip noch nicht mal ausführbar, was ich geändert habe:
-rwxr-xr-- 1 ssh-983387 nobody 5077 2008-10-29 17:37 dmailerd.phpcron

Habs nun versucht manuell aufzurufen. Sowohl mit 'sh' als auch mit "./" - Kommt immmer der gleiche Fehler:

PHP
: No such file or directoryphp
dmailerd.phpcron: line 3: /*****************************************************: No such file or directory
dmailerd.phpcron: line 4: calendar: command not found
: command not foundine 5: *
dmailerd.phpcron: line 6: syntax error near unexpected token `c'
dmailerd.phpcron: line 6: `*  (c) 1999-2004 Kasper Skaarhoj (kasperYYYY@typo3.co')


Auszug aus dem Inhalt von dmailerd.phpcron:
PHP
#!/usr/bin/php5
<?php
/***************************************************************
*  Copyright notice
*
*  (c) 1999-2004 Kasper Skaarhoj (kasperYYYY@typo3.com)
*  (c) 2004-2006 Stanislas Rolland <stanislas.rolland(arobas)fructifor.ca>
*  All rights reserved
*
[...]


Habs gefühl, dass er den Code nicht richtig akzeptiert, da das ja eig. auskommentiert sein sollte...

Auch der aufruf crontab -e bringt die Fehlermeldung:
cannot chdir(/var/spool/cron), bailing out.
/var/spool/cron: Permission denied

Cronjob kann ich, so weit ich weiß, auch nur im Kundenmenü erstellen...

Kann mir jemand helfen?
Danke,
Leo
ProfilICQ
Verfasst am: 13. 12. 2008 [18:44]
leof
Themenersteller
Dabei seit: 10.04.2008
Beiträge: 56
Hallo,
ich kam schon etwas weiter:
Hab an den Anfang der Datei
[JAVASCRIPT]#!/usr/local/bin/php[/JAVASCRIPT]
geschrieben, da dort mein php liegt. Herausfindbar mit dem Befehlt: which php
Nun kommt nach dem Ausführen mit ./dmailerd.phpcron der Fehler:

[JAVASCRIPT]bash: ./dmailerd.phpcron: /usr/local/bin/php^M: bad interpreter: No such file or directory
[/JAVASCRIPT]

Kann in der Datei aber kein ^M finden. Weiß jemand Rat?

Danke, Leo
ProfilICQ
Verfasst am: 13. 12. 2008 [21:13]
leof
Themenersteller
Dabei seit: 10.04.2008
Beiträge: 56
Kam nun noch einen Schritt weiter: Es war an jedem Zeilenende das Zeilenumbruchszeichen von Windows, also ein "^M" zu finden, welches man jedoch leicht mit dem Befehl:
PHP
perl -e 'while (<&gt<img src="typo3conf/ext/mm_forum//res/smilies/icon_wink.gif" alt="icon_wink.gif" /> {s/\r//;print}' dateiname> dateiname.ohne_crlf

weg bekommt.

Nun kommt beim Ausführen mit ./dmailerd.phpcron die Felhermeldung:
PHP
X-Powered-By: PHP/4.4.8
Content-type: text/html
 
 
<b>Warning</b>:  main(./t3lib/class.t3lib_div.php) [<a href='function.main'>function.main</a>]: failed to open stream: No such file or directory in <b>/kunden/206180_70794/rp-hosting/7620/8620/typo3cms/dav/typo3conf/ext/direct_mail/res/scripts/dmailerd.phpcron</b> on line <b>61</b>
 
<b>Fatal error</b>:  main() [<a href='function.require'>function.require</a>]: Failed opening required './t3lib/class.t3lib_div.php' (include_path='.:/usr/local/lib/php') in <b>/kunden/206180_70794/rp-hosting/7620/8620/typo3cms/dav/typo3conf/ext/direct_mail/res/scripts/dmailerd.phpcron</b> on line <b>61</b>

Da versteh ich nun beim besten Willen nix mehr ;-(

Leo
ProfilICQ
Verfasst am: 14. 12. 2008 [09:52]
leof
Themenersteller
Dabei seit: 10.04.2008
Beiträge: 56
Gibt schon wieder was Neues:
Mit dem Befehl
./dmailerd.phpcron>/dev/null
gibt es keine Fehlermeldung mehr... Jedoch werden die Mails nicht verschickt...

Funktioniert denn bei euch der Cronjob?

Lg, Leo
ProfilICQ
Verfasst am: 19. 01. 2009 [23:33]
shustedt
Dabei seit: 12.05.2004
Beiträge: 61
Hallo,

gibts dazu schon etwas Neues?

Ich habe exakt das gleiche Problem, bin auch bei Weiland. Auf Nachfrage sagte er mir dann, dass Cronjobs über das Kundenmenü einzurichten sind und nicht über die Konsole. Da kommt bei mir auch "permission denied". Es können Cronjobs bis zu 30 Minuten eingerichtet werden, alles weitere dann nur direkt über den Support bei Weiland.

Allerdings ist scheinbar die Einrichtung nicht das Problem, sondern wirklich die Datei selber. Ich habe auch alles ausprobiert - aber im Kundenmenü sagt er mir dann immer:

Letzte Ausgabe des Cronjobs:
Fehler: /kunden/225578_70794/rp-hosting/8863/9863/typo3cms/projekt1/typo3conf/ext/direct_mail/res/scripts/dmailerd.phpcron ist nicht ausfuehrbar


Hier ist Rätselraten angesagt...

icon_rolleyes.gif

Viele Grüße,
Sebastian
ProfilWWW
Verfasst am: 22. 01. 2009 [12:49]
shustedt
Dabei seit: 12.05.2004
Beiträge: 61
Hab den Cronjob zum Laufen gebracht. Es geht zwar nun weiter mit den Problemen, aber das gehört ja nicht hierher icon_wink.gif

Ich habe zunächst die Datei dmailerd.phpcron in dmailerd.php umbenannt und dann in der ersten Zeile das

PHP
#!/usr/local/bin/php


gelöscht. Weiter habe ich dann in der gleichen Datei Zeile 41 ersetzt durch

PHP
if (!defined('PATH_thisScript')) define('PATH_thisScript',str_replace('//','/', str_replace('\','/', $_SERVER['DOCUMENT_ROOT'] . $_SERVER['PHP_SELF'])));


Nun noch den Cronjob eingerichtet als absoluten HTTP-Aufruf und fertig! Der Pfad sieht bei mir so aus: http://www.XYZdomain.tld/typo3conf/ext/direct_mail/res/scripts/dmailerd.php
ProfilWWW
Verfasst am: 27. 05. 2009 [17:47]
ankes
Dabei seit: 02.05.2008
Beiträge: 40
für den Aufruf des cron-jobs hab ich es so gemacht:
PHP
*/5 * * * * /usr/bin/php5 -q /var/.../kunde-xyz/typo3conf/ext/direct_mail/res/scripts/dmailerd.php > /dev/null

Dann ist auch Wurscht, was in der ersten Zeile des scripts drinsteht.
Umbenannt habe ich die Datei aber auch.
Grüße
Andreas
ProfilWWW
Verfasst am: 27. 05. 2009 [18:21]
leof
Themenersteller
Dabei seit: 10.04.2008
Beiträge: 56
Wo hast du das denn eingetragen?
ProfilICQ
Verfasst am: 28. 05. 2009 [22:30]
ankes
Dabei seit: 02.05.2008
Beiträge: 40
na in die crontab mittels
"crontab -e"
ProfilWWW
Verfasst am: 28. 05. 2009 [22:43]
leof
Themenersteller
Dabei seit: 10.04.2008
Beiträge: 56
Ja - sry... mein Fehler
Wollte damit eig. sagen, dass wir (bei jweiland gehosteten) keinen Zugriff auf die crontab haben...
Deswegen auch die ganzen umständlichen Versuche, per Sricpaufruf oder ähnliches, einen cronjob einzurichten...

Gruß, Leo
ProfilICQ