Page 1 of 1

cron-jobs

Posted: 2003-02-07 20:28
by debian inside
kann man mit cron-jobs ein php-script starten?

Re: cron-jobs

Posted: 2003-02-07 20:32
by oxygen
Ja.

Re: cron-jobs

Posted: 2003-02-07 20:47
by kase
1 0 * * * /usr/bin/php /var/www/pfad/datei.php >/dev/null

Startet das php Script datei.php um 0:01 Uhr.

Re: cron-jobs

Posted: 2003-02-07 21:05
by debian inside
danke...auch bei debian?

Re: cron-jobs

Posted: 2003-02-07 21:18
by wirsing
Kommt drauf an ob du mit mod_php oder CGI - sprich den php4-Paketen oder den php4-cgi-Paketen - arbeitest.
Als CGI müsste es gehen.

Re: cron-jobs

Posted: 2003-02-07 21:20
by makmaster
debian inside wrote:danke...auch bei debian?
Wieso sollte das da anders sein? :wink:

MfG Markus

Re: cron-jobs

Posted: 2003-02-07 21:21
by debian inside
:(
ich will aber php nicht als cgi-paket laufen lassen

Re: cron-jobs

Posted: 2003-02-07 22:03
by floschi
Es heisst unter Debian /usr/bin/php4.

Du musst den Apache nicht mit dem php-cgi betrieben, aber installieren kannst du es allemal, um eben z.B. per Shell mit php zu arbeiten oder dadurch per cronjob ;)


Grüßle

Olfi ;)

Re: cron-jobs

Posted: 2003-02-07 22:55
by kase
olfi wrote:Es heisst unter Debian /usr/bin/php4.
Bei mir heißt es php !

Wie hast du es denn instaliert ?

Welche Version ?

Re: cron-jobs

Posted: 2003-02-07 23:06
by kase
narf, inzwischen gibt es ja das Packet php4-cgi :(

Als ich php4-cgi oinstalliert habe, gabs das 100 % noch nicht. zumindest hat apt-cache search php4-cgi nix gefunden.

Hab also nun php4-cgi manuell compiliert, gibts jetzt eine Möglichkeit, dass wieder zu deinstallieren ? Falls ich manuell Löschen muss, welche Files muss ich dann alles kicken ?

Re: cron-jobs

Posted: 2003-02-08 00:02
by debian inside
/etc/cron.d/exim

ist das die crontab??

Re: cron-jobs

Posted: 2003-02-08 00:38
by debian inside
ok ich gib es zu ich bin der größte dau überhaupt :-D

hab bemerkt das man die crontab mit crontab -e editieren kann

Re: cron-jobs

Posted: 2003-02-08 02:39
by debian inside
hab noch ein problem:

/usr/bin/php4 /var/www/web1/html/cpu_log/index.php >/dev/null
unterdrückt eine Fehlermeldung

also:

/usr/bin/php4 /var/www/web1/html/cpu_log/index.php </dev/null

dann kommt folgende Meldung:
Fatal error: Call to undefined function: mysql_pconnect() in /var/www/web1/html/cpu_log/class_db_zugriff.php on line 23

das script funktioniert aber wenn ich es über das internet aufrufe

das eigentlich problem ist aber das es dann nicht in die mysql datenbank schreibt

Re: cron-jobs

Posted: 2003-02-08 03:20
by debian inside
ok es läuft jetzt...

falls es jemanden interessiert


/usr/bin/php /var/www/web1/html/cpu_log/index.php

also nicht php4 weil das das php4-cgi ist und das unterstützt mysql_pconnect nicht oder so

also funktioniert es auch mit php als modul

Re: cron-jobs

Posted: 2003-02-08 09:59
by captaincrunch
also nicht php4 weil das das php4-cgi ist und das unterstützt mysql_pconnect nicht oder so
also funktioniert es auch mit php als modul
Jein ... der Fehler war eigentlich ein anderer :
/usr/bin/php4 /var/www/web1/html/cpu_log/index.php </dev/null
Hier versuchst du, den Inhalt von /dev/null an das Script zu übergeben (durch das kleiner-Zeichen). Daher kann das ganze nicht funktionieren, da es das größer-Zeichen hätte sein müssen ... :wink:

Re: cron-jobs

Posted: 2003-02-08 10:12
by debian inside
wenn ich > verwende kommt gar nichts wenn man < verwendet sieht man zumindest den fehler der sagt mir das bei php als cgi mysql_pconnect nicht unterstützt wird

Re: cron-jobs

Posted: 2003-02-08 10:21
by captaincrunch
Durch das > leitest du die Standardausgabe (normalerweise dein Terminal) auf /dev/null um, es ist also völlig normal, wenn du dann nichts siehst.

Mit dem < kann das ganze nicht klappen, weil du (wie schon gesagt) den Inhalt von /dev/null an das Script weiterleitest, und so alles durcheinanderkommt ... :wink:

Re: cron-jobs

Posted: 2003-02-08 10:31
by debian inside
ja schon klar >/dev/null unterdrückt die fehlermeldung...
egal jetzt funktioniert es

danke

Re: cron-jobs

Posted: 2003-02-08 15:15
by captaincrunch
ja schon klar >/dev/null unterdrückt die fehlermeldung...
Jein ... jetzt bitte nicht falsch verstehen, aber der Satz ist so nicht ganz korrekt :

- Das > lenkt (wie oben schon gesagt) die Standardausgabe (stderr, FileDescriptor 1) nach /dev/null um, wovon Fehlermeldungen im Normalfall nicht betroffen sind.

- Die Standardfehlerausgabe (stderr) hat den Filedescriptor 2. Es kann dir daher im Beispiel oben passieren, dass immer noch Ausgaben auftauchen, nämlich die Fehler. Das ist auch die Hauptursache dafür, warum viele Leute bei Cronjobs (ungewollt) Mails bekommen, da ihnen der Unterschied nicht klar ist.

Wenn du also sowohl die Standardausgabe als auch die Standardfehlerausgabe nach /dev/null umleknken möchtest, müsste es korrekterweise so aussehen :
/usr/bin/php4 /var/www/web1/html/cpu_log/index.php > /dev/null 2>&1

Re: cron-jobs

Posted: 2003-02-08 15:19
by kase
sicher ?

Habe immer gedacht, wenn man beide Ausgaben in eine Datei umlenken wolle, dann sehe das so aus:

/usr/bin/php4 /var/www/web1/html/cpu_log/index.php &>/dev/null

Re: cron-jobs

Posted: 2003-02-08 15:26
by captaincrunch
sicher ?
Ja ... in dem von mir geschilderten Fall 100%ig, da schon zigfach durchgeführt ... :wink:

Das heißt aber nicht, dass deine Möglichkeit nicht auch funktionieren sollte, wir reden hier schließlich über Unix, wo viele Wege zum Ziel führen ... :wink: