nexis
12.09.2006, 08:44:36
Witam,
mam na serwerze usługę crontab i chciałbym na przykład, aby skrypt o nazwie test.php uruchamiał się co minutę. Wpisuję więc:
***** /srv/www/htdocs/web121/html/test.php
Gdzie /srv/www/htdocs/web121/html/test.php to ścieżka, którą odczytałem za pomocą $_SERVER['SCRIPT_FILENAME'].
Problem jest taki, że skrypt ten się nie wykonuje. Co wpisuję źle w poleceniu?
mdco
12.09.2006, 08:48:37
Tak sie nie wykona musisz użyc polecenia php
Użyj w lini poleceń: php --help
kszychu
12.09.2006, 08:51:11
Albo wget
http://localhost/test.php, ścieżkę oczywiście wpiszsobie taką jaką masz u siebie.
-nobody-
4.12.2007, 00:06:19
Trzeba użyć interpretera.
Skryptu php nie uruchomisz w ten sposob:
/sciezka/test.php
ale w ten:
php /sciezka/test.php
Mozna uzyc tez skryptu bash'a, ktory wykona powyzsze polecenie.
slawcio
9.09.2008, 09:44:06
bo to trzeba tak :
*/1 * * * * cd /srv/www/htdocs/web121/html/;php test.php
kacpero1094
22.04.2010, 14:32:12
Mi na maila zwraca coś takiego: /bin/sh: php: command not found
Co zrobić?
lukasz_matysek
23.04.2010, 17:25:52
zwraca ci coś takiego, ponieważ w tabeli crona jak i skryptach basha należy podawać bezpośrednią, bezwzględną lokalizację programu który uruchamiamy czy też pliku do którego się odwołujemy. Nie działają skróty przez tyldę - czyli do home, albo przez ./ czyli podkatalog bieżącego katalogu.
wklep sobie:
whereis php
dostaniesz w odpowiedzi prawdopodobnie lokalizację /usr/bin/php i tak należy to wpisać do crona.
Jeżeli nie masz zainstalowanego interpretera linii komend php, wpisz
apt-get install php5-cli
czy też jak instalujesz pakiety w swojej dystrybucji. Powyższe polecenie funkcjonuje dla debianów (ubuntu itp)
Cardil
11.04.2012, 14:48:10
Pomocna może okazać się klasa do zarządania prywartnymi plikami cron per projekt. Dostępne także narzędzie command line:
https://github.com/MediovskiTechnology/php-crontab-manager
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę
kliknij tutaj.