Cronjob draait maar voert niks uit

Pagina: 1
Acties:

  • RSD
  • Registratie: Maart 2001
  • Laatst online: 08-02-2017
De cronjob is zeker weten goed ingesteld. Namelijk alsvolgt (heb ook andere geprobeerd):

0-59 * * * * /usr/bin/php /var/www/html/crons/cron.php > /dev/null

Daarnaast staat selinux gedisabled. De logs geven aan dat de cronjob elke minuut loopt, alleen het script wordt niet uitgevoerd op de een of andere manier.

Als ik het script aanroep in de browser draait het script zonder errors.

Weet iemand misschien wat dit kan zijn?

[ Voor 9% gewijzigd door RSD op 30-08-2006 19:16 ]


  • Orion84
  • Registratie: April 2002
  • Laatst online: 22:35

Orion84

Admin General Chat / Wonen & Mobiliteit

Fotogenie(k)?

En wat als je het script aanroept op de commandline? Want het aanroepen in een browser is natuurlijk iets anders dan het uitvoeren met cron.

Als ik hier probeer php bestanden op de commandline uit te voeren krijg ik iig vrolijk een foutmelding.

(Sowieso is php natuurlijk nooit bedoeld om systeem scripts mee te knutselen)

[ Voor 14% gewijzigd door Orion84 op 30-08-2006 19:19 ]

The problem with common sense is that it's not all that common. | LinkedIn | Flickr


  • Setragasj
  • Registratie: Augustus 2001
  • Laatst online: 03-02 15:32

Setragasj

is using radars to communicate

/usr/bin/php /var/www/html/crons/cron.php
Hier zitten een spatie tussen. Misschien een typo?

Het script wordt niet vanaf een browser gedraait, dus je kunt bijvoorbeeld geen globals gebruiken als $_SERVER vars enzo. Misschien dat er daar wat fout gaat?

<Typ een persoonlijk bericht>


  • RSD
  • Registratie: Maart 2001
  • Laatst online: 08-02-2017
Ik gebruik idd wel $_SERVER["DOCUMENT_ROOT"] ed. Dat mag dus niet? Ik moet dus waarschijnlijk wget gaan gebruiken?

  • Setragasj
  • Registratie: Augustus 2001
  • Laatst online: 03-02 15:32

Setragasj

is using radars to communicate

wget weet ik niet of dat zal gaan werken... Schat de kans klein in, maar probeer het zal ik zeggen.
Het beste is dan om harde paths te gebruiken.

<Typ een persoonlijk bericht>


  • Gomez12
  • Registratie: Maart 2001
  • Laatst online: 17-10-2023
Probeer eens wat " of ' of ` om je hele executie verhaal heen te zetten. Of probeer eens een klein batchbestandje te schrijven wat het eigenlijk doel oplevert en dit en los te draaien en in de cron te zetten.

Want officieel hoeven er volgens mij geen apostrophes omheen, maar in het verleden wel vaak nodig gehad dat het toch moest...

  • Orion84
  • Registratie: April 2002
  • Laatst online: 22:35

Orion84

Admin General Chat / Wonen & Mobiliteit

Fotogenie(k)?

RSD schreef op woensdag 30 augustus 2006 @ 19:22:
Ik gebruik idd wel $_SERVER["DOCUMENT_ROOT"] ed. Dat mag dus niet? Ik moet dus waarschijnlijk wget gaan gebruiken?
PHP uitvoeren op de commandline moet sowieso door er php4, of php5 voor te zetten, of net welke versie je draait. dus php4 <naam script>

Hoe het verder zit met die globals weet ik niet, maar zoals ik al zei is php dus niet gemaakt voor systeemscripts ;)

Of je wget moet gebruiken kan ik zo snel niet zien in mijn glazen bol, daarvoor zul je toch echt wat meer info moeten geven over wat je van plan bent met die cronjob :+

The problem with common sense is that it's not all that common. | LinkedIn | Flickr


  • HunterPro
  • Registratie: Juni 2001
  • Niet online
Orion84 schreef op woensdag 30 augustus 2006 @ 19:25:
[...]

PHP uitvoeren op de commandline moet sowieso door er php4, of php5 voor te zetten, of net welke versie je draait. dus php4 <naam script>

Hoe het verder zit met die globals weet ik niet, maar zoals ik al zei is php dus niet gemaakt voor systeemscripts ;)

Of je wget moet gebruiken kan ik zo snel niet zien in mijn glazen bol, daarvoor zul je toch echt wat meer info moeten geven over wat je van plan bent met die cronjob :+
lezen, dat doet ie dus ook, hence de spatie na /php. Hij roept hier (als het goed is) de PHP binary aan. :) Die spatie is dus geen typo.

  • Orion84
  • Registratie: April 2002
  • Laatst online: 22:35

Orion84

Admin General Chat / Wonen & Mobiliteit

Fotogenie(k)?

HunterPro schreef op woensdag 30 augustus 2006 @ 19:29:
[...]

lezen, dat doet ie dus ook, hence de spatie na /php. Hij roept hier (als het goed is) de PHP binary aan. :) Die spatie is dus geen typo.
Ah, ok, my bad :)

Anyways, dan nog steeds lijkt het me handiger om het dan ook met datzelfde commando te testen dan via een browser.

[ Voor 17% gewijzigd door Orion84 op 30-08-2006 19:33 ]

The problem with common sense is that it's not all that common. | LinkedIn | Flickr


  • NS_5
  • Registratie: Februari 2005
  • Laatst online: 18-12-2024
Volgens mij kun je inderdaad niet $_SERVER• gebruiken.
Simpelweg omdat er geen server meer is.
week niet zeker

  • Eijkb
  • Registratie: Februari 2003
  • Laatst online: 28-01 10:19

Eijkb

Zo.

Je kan ipv > /dev/null ook voor /blablabla/log.txt kiezen natuurlijk. Wellicht krijg je output, dan weet je wat meer.

.


  • Wolfboy
  • Registratie: Januari 2001
  • Niet online

Wolfboy

ubi dubium ibi libertas

Vergeet niet dat je sowieso "php -f bestand.php" moet gebruiken, zonder dat gaat het niet werken ;)

Blog [Stackoverflow] [LinkedIn]


  • moto-moi
  • Registratie: Juli 2001
  • Laatst online: 09-06-2011

moto-moi

Ja, ik haat jou ook :w

Orion84 schreef op woensdag 30 augustus 2006 @ 19:25:
PHP uitvoeren op de commandline moet sowieso door er php4, of php5 voor te zetten, of net welke versie je draait. dus php4 <naam script>
Dat ligt maar net aan je distro, als je standaard vanaf de sources compileert heet het gewoon 'php', ongeacht welke versie je gebruikt :)

God, root, what is difference? | Talga Vassternich | IBM zuigt


  • triet
  • Registratie: Januari 2003
  • Niet online
Wolfboy schreef op woensdag 30 augustus 2006 @ 19:37:
Vergeet niet dat je sowieso "php -f bestand.php" moet gebruiken, zonder dat gaat het niet werken ;)
Stukje van 'man php':
If none of -r -f -B -R -F or -E is present but a single parameter is
given then this parameter is taken as the filename to parse and execute
(same as with -f). If no parameter is present then the standard input
is read and executed.
-f is dus niet nodig.

  • Wolfboy
  • Registratie: Januari 2001
  • Niet online

Wolfboy

ubi dubium ibi libertas

Hangt van de versie af dan, ik heb wel een aantal servers gezien waar het dus niet zonder de -f flag ging hoor :)

Maar ik zie dat (iig bij php5) het niet meer nodig is nee.

Blog [Stackoverflow] [LinkedIn]


  • RSD
  • Registratie: Maart 2001
  • Laatst online: 08-02-2017
Ik denk dat het door de globals komt die ik gebruikte dat hij het daarom niet deed, maar goed nu loopt de cron helemaal niet meer :-( Hoe krijg ik die nu weer aan de praat ... ? anacron uninstallen helpt niet echt wat. Hij deed het zojuist nog. Heb de service crond en anaconda al gerestart maar dat helpt ook niks.

In de logs verschijnt iig geen tekst meer.

Nu wel weer, reboot hielp niet, maar volledig aan en uitzetten wel ;-) Nu even de andere dingen proberen.

Als je van /dev/null bijv /tmp/cron.txt maakt kun je errors zien. Het blijkt dus dat je ook geen includes erin mag zetten.

[ Voor 70% gewijzigd door RSD op 30-08-2006 21:01 ]

Pagina: 1