|
|
|
| Здравствуйте.
Не запускаются тестовые скрипты через cron. Нет ли ошибок в crontab и самих файлах?
Файл crontab редактирую через ssh в vi. Хочу, чтобы скрипты запускались каждый час. Путь к php получал командой which php. Путь к скрипту узнал через $_SERVER['DOCUMENT_ROOT'], вывел эту переменную при запуске сайта. Права у скриптов стоят 777. Ошибок не приходит.
MAILTO=antf@inbox.ru
* */1 * * * /usr/bin/php/ /home/mysite/mysite.myhost.ru/html/cron/test.php
* */1 * * * /usr/bin/php/ /home/mysite/mysite.myhost.ru/html/cron/test2.php
|
Файл test.php (тест записи в файл)
<?php
$path = "/home/mysite/myhost.ru/html/content/test.txt";
$str = date("r")."\r\n";
$fp = @fopen ($path, "a+");
fwrite ($fp, $str);
fclose ($fp);
@chmod($path, 0777);
?>
|
Файл test2.php (тест соединения с базой)
<?php
mysql_connect("localhost", "db_user", "db_psw");
mysql_select_db("mydbname");
$query = "INSERT INTO test_date SET cur_date = NOW()";
mysql_query($query);
mysql_close();
?>
|
| |
|
|
|
|
|
|
|
для: antf
(10.05.2008 в 17:51)
| | А вот. 40 писем в ящике. Вот что пишет:
bin/sh: line 1: /usr/bin/php/: Not a directory | |
|
|
|
|
|
|
|
для: antf
(10.05.2008 в 18:12)
| | Чтобы скрипт работал в кроне надо задать путь к интерпретатору php | |
|
|
|
|
|
|
|
для: winflip
(10.05.2008 в 18:34)
| | Так он же задан /usr/bin/php/ в crontab | |
|
|
|
|
|
|
|
для: antf
(10.05.2008 в 19:10)
| | Хотя может быть я слэш лишний дописал... | |
|
|
|
|
|
|
|
для: antf
(10.05.2008 в 19:20)
| | >Хотя может быть я слэш лишний дописал...
Я о том же | |
|
|
|
|
|
|
|
для: winflip
(10.05.2008 в 19:26)
| | Убрал слэш. Файл записывается. База обновляется. Но только делается это каждую минуту, а не каждый час. Я что-то напортачив в задании или нет? | |
|
|
|
|
|
|
|
для: antf
(10.05.2008 в 19:54)
| | может проще написать в лоб?
0 * * * * /usr/bin/php.....
|
| |
|
|
|
|
|
|
|
для: Trianon
(11.05.2008 в 00:26)
| | Хех а у меня на СУСЕ вот так запускается
* */1 * * * php -r /home/mysite/mysite.myhost.ru/html/cron/test2.php | |
|
|
|
|
|
|
|
для: himic
(11.05.2008 в 14:49)
| | охотно верю.
Разница между хорошим и плохим скриптом в том, что хороший скрипт будет работать в любом операционном окружении, а плохой - только в том, для которого написан.
Разница между хорошим и плохим операционным окружением в том, что в хорошем будут работать любые скриптовые решения, а плохом - лишь наиболее переносимые.
Я предположил, что поменять строку в cron будет дешевле, чем ставить SUSE :) | |
|
|
|
|
|
|
|
для: Trianon
(11.05.2008 в 00:26)
| | В лоб? Помогло :) Спасибо! | |
|
|
|