Wywo

Potrzebujesz pomocy z C, C++, perl, python, itp.
ksysinek
Beginner
Posty: 155
Rejestracja: 14 czerwca 2007, 00:33
Lokalizacja: *Miasto know-how

Wywołanie skryptu PHP przez crona

Post autor: ksysinek »

Witam.
Zrobiłem skrypt do okresowego oczyszczania bazy, który powinien być wywoływany z crona. Zapisuje on w bazie, kiedy ostatnie czyszcznie zostało wykonane. Próbowałem go dodać do crontab na różne sposoby:

Kod: Zaznacz cały

*/5 * * * * php5 /var/www/cleanup.php
*/5 * * * * /usr/bin/php /var/www/cleanup.php
*/5 * * * * wget -o /dev/null http://adresstrony/cleanup.php
*/5 * * * * /var/www/cleanup.php
Nigdy nie dostałem potwierdzenia wykonania. O dziwo wpisując w konsoli:

Kod: Zaznacz cały

php5 /var/www/cleanup.php lub
/var/www/cleanup.php
za każdym razem uzyskiwałem oczekiwany efekt. Nie mam pojęcia co mogę robić źle.
Awatar użytkownika
Bastian
Member
Posty: 1424
Rejestracja: 30 marca 2008, 16:09
Lokalizacja: Poznañ

Post autor: Bastian »

Kod: Zaznacz cały

wget -q --delete-after  http://adresstrony/cleanup.php 
lub

Kod: Zaznacz cały

php5 -f cleanup.php

Wystarczy spojrzeć w pomoc
ksysinek
Beginner
Posty: 155
Rejestracja: 14 czerwca 2007, 00:33
Lokalizacja: *Miasto know-how

Post autor: ksysinek »

To samo, z konsoli wszystko dobrze a z crona nie. Jak sprawdzić, czy cron dobrze pracuje?
Awatar użytkownika
Bastian
Member
Posty: 1424
Rejestracja: 30 marca 2008, 16:09
Lokalizacja: Poznañ

Post autor: Bastian »

Kod: Zaznacz cały

cat /var/log/syslog |grep CRON
ksysinek
Beginner
Posty: 155
Rejestracja: 14 czerwca 2007, 00:33
Lokalizacja: *Miasto know-how

Post autor: ksysinek »

Nie było nic w syslogu na temat rzeczonego wpisu w crontab. Dodałem ten wpis innemu uzytkownikowi i poszło. Nie wiem, co mogło byc nie tak. Czy sa jakies restrykcje, np maxymalna ilosc wpisów lub zadań zaplanowanych na tę samą godzinę?
Awatar użytkownika
DaVidoSS
Junior Member
Posty: 875
Rejestracja: 06 marca 2010, 11:26
Lokalizacja: ~/

Post autor: DaVidoSS »

Masz blad w crontab.

Kod: Zaznacz cały

*/5 * * * * /var/www/cleanup.php
Powinno byc :

Kod: Zaznacz cały

*/5 * * * * użytkownik php /var/www/cleanup.php
Przecież Ci cron pliku nie wykona lecz polecenie.
Awatar użytkownika
lessmian2
Member
Posty: 1088
Rejestracja: 30 kwietnia 2008, 19:38
Lokalizacja: Kraków

Post autor: lessmian2 »

DaVidoSS pisze:Masz blad w crontab.

Kod: Zaznacz cały

*/5 * * * * /var/www/cleanup.php
Powinno byc :

Kod: Zaznacz cały

*/5 * * * * użytkownik php /var/www/cleanup.php
Przecież Ci cron pliku nie wykona lecz polecenie.

Tylko jeśli umieszczasz takie wpisy w /etc/cron.d/ i pochodnych. Przy edycji za pomocą crontab -e nie podaje się użytkownika.
ODPOWIEDZ