Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / Запуск скрипта на CRON / 24 сообщений из 24, страница 1 из 1
10.06.2010, 17:58
    #36681349
Влад07
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Запуск скрипта на CRON
Через ISP Manager прописал запуск скрипта на cron.
Команда имеет вид: "/var/www/.../server_update.php >/dev/null 2>&1" (причем параметры " >/dev/null 2>&1" ISP Manager добавляет автоматически)
Скрипт в итоге не срабатывает.

В скрипте (если это имеет значение) есть подключение к БД и запросы к ней, + функции cURL.
Сам по себе скрипт если его запускать из адреса, то он работает.

Проблема именно с параметрами запуска.
Искал описание параметров запуска. В интернете инфы много, но про параметры описания так и не нашел.

Подскажите с какими параметрами надо запускать, или может ссылочку дадите где описано про параметры запуска cron.
...
Рейтинг: 0 / 0
10.06.2010, 18:13
    #36681376
vkle
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Запуск скрипта на CRON
Скорей всего, проблема в переменых окружения. При запуске скрипта через вебсервер они одни, при запуске из консоли - другие, а при запуске из крона - третьи. Например, различаются PATH, SERVER. При написании и отладке скрипта следует иметь это в виду.
Вариантов решения тоже несколько:
- писать с учётом различий
- установить нужное окружение в cron (может повлиять на другие задания)
- вызывать скрипт через вебсервер wget'ом (самый ленивый и ресурсожручий вариант)
Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
10.06.2010, 21:18
    #36681629
Warstone
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Запуск скрипта на CRON
Или тупо фаил не является executable. Или php запускаться не умеет (интерпретатора нету). Вариантов куча. Да и #! /usr/bin/php в начале скрипта скорей всего не стоит.
...
Рейтинг: 0 / 0
10.06.2010, 21:34
    #36681643
vkle
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Запуск скрипта на CRON
Отсутствие шабанга (эх, зря они # отменили в комментариях) или бита выполнения можно исправить, вызывая таким образом (пути заменить на реальные):
Код: plaintext
/usr/bin/php -f ~/path/to/file.php  1 >/dev/null  2 >& 1 
Впрочем, потоки вывода и ошибок для отладки вполне уместно вывести в лог-файлы:
Код: plaintext
/usr/bin/php -f ~/path/to/file.php  1 >~/log/cron-out.log  2 >~/log/cron-error.log

Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
10.06.2010, 21:38
    #36681648
vkle
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Запуск скрипта на CRON
> можно исправить

Не, конечно, можно и дописать/установить требуемое ))
Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
11.06.2010, 07:29
    #36681910
Влад07
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Запуск скрипта на CRON
Прописываю:
/usr/bin/php5 -f ~/var/www/username/data/www/site.ru/crone/update.php

Пишу /usr/bin/php5 т.к. в папке /usr/bin/ есть файл php5, а файла php нету.

В самом скрипте update.php все пути изменил на абсолютные. Из браузера скрипт запускается.

А этим способом так и не получается. При запуске через панель выводит: Exited with return code = 1
...
Рейтинг: 0 / 0
11.06.2010, 09:05
    #36681970
vkle
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Запуск скрипта на CRON
Влад07,

> Прописываю:
> /usr/bin/php5 -f ~/var/www/username/data/www/site.ru/crone/update.php

Тильда означает "домашний каталог", а Вы прописали вроде как полный путь от корня. Скорей всего, /var/www/username лишнее.
Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
11.06.2010, 09:31
    #36681998
sxq
sxq
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Запуск скрипта на CRON
у многих хостеров имеется утилита wget, если у вас имеется доступ к консоли, то легко проверить ее наличие, тогда достаточно поставить в планировщик команду типа
wget -o /dev/null -O/dev/null http://www.url.ru/server_update.php
тогда данный скрипт будет вызываться как в вебраузере, отпадет проверка путей, переменных окружения и т.д.
...
Рейтинг: 0 / 0
11.06.2010, 10:08
    #36682054
Запуск скрипта на CRON
vkle ,
Попробовал менять путь.. Максимум что получалось это код возвращал: Exited with return code = 255

sxq ,
Запускать из браузера нет желания т.к. это создаст хоть и небольшую но нагрузку.
...
Рейтинг: 0 / 0
11.06.2010, 10:12
    #36682063
Warstone
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Запуск скрипта на CRON
Уважаемый Влад, хоть раз попробуйте записать логи в фаил. То есть сделать перенаправление в фаил с полным путем. Вам станет намного проще бороться с проблемой непонимания принципа работы cron'а
...
Рейтинг: 0 / 0
11.06.2010, 10:41
    #36682144
Запуск скрипта на CRON
Warstoneпопробуйте записать логи в фаил. То есть сделать перенаправление в фаил с полным путем. Вам станет намного проще бороться с проблемой непонимания принципа работы cron'а

Прописываю:
автор/usr/bin/php5 -f /var/www/username/data/www/site.ru/crone/update.php 1>/var/www/username/data/log/cron-out.log 2>/var/www/username/data/log/cron-error.log

Папку log создал... даже файлы создал.. на всё поставил права "777".
не пишутся логи ... пробовал и с относительными путями через тильду... тоже эффекта 0..

Может в ISP Manager есть свои тонкости? PS: ОС Debian x86
...
Рейтинг: 0 / 0
11.06.2010, 11:05
    #36682208
anvano
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Запуск скрипта на CRON
SSH доступ есть к хостингу? Тогда просто смотрите ручками что у вас там в crontab понаписалось при добавлении через ISP.
Пробуйте сами выполнить эти же команды из консоли, выполнятся ли?
Если это не ваш сервер - пинайте техсаппорт, почему не выполняются задания.

Смотрите логи крона /vars/log/cron.log или где там он в дебиане.....

PHP у вас как CGI стоит или как модуль апача? В случае установки как CGI вполне может быть ситуация, что через браузер вы его запустите а из консоли нет.
...
Рейтинг: 0 / 0
11.06.2010, 11:14
    #36682236
vkle
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Запуск скрипта на CRON
Эммм... Ваапще та, PHP нужен CLI - command line interface. Из командной же строки запуск то. Впрочем, CGI тоже вполне можно использовать.
Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
11.06.2010, 13:14
    #36682682
Warstone
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Запуск скрипта на CRON
Влад(неавторизован)Warstoneпопробуйте записать логи в фаил. То есть сделать перенаправление в фаил с полным путем. Вам станет намного проще бороться с проблемой непонимания принципа работы cron'а

Прописываю:
автор/usr/bin/php5 -f /var/www/username/data/www/site.ru/crone/update.php 1>/var/www/username/data/log/cron-out.log 2>/var/www/username/data/log/cron-error.log

Папку log создал... даже файлы создал.. на всё поставил права "777".
не пишутся логи ... пробовал и с относительными путями через тильду... тоже эффекта 0..

Может в ISP Manager есть свои тонкости? PS: ОС Debian x86Отлично, тогда следующая манипуляция... Пишете простейший скрипт, который делает следующее: Открывает фаил с полным путем, пишет туда текущую дату и закрывает его. Ставите в крон на минуту (все 5 звездочек). Если через минут 5 в файле есть запись крон-таки работет, если нету - разбирайтесь с провайдером. Скорей всего или вы или он(вряд-ли) что-то не так пишет в крон.
...
Рейтинг: 0 / 0
11.06.2010, 16:13
    #36683277
Влад07
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Запуск скрипта на CRON
может кто еще подскажет?
...
Рейтинг: 0 / 0
11.06.2010, 16:51
    #36683387
ScareCrow
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Запуск скрипта на CRON
что подсказатЬ? ставишь php как CLI потом к кроне пишешь тра/ля/ля/php имя_скрипта
и вперед.
...
Рейтинг: 0 / 0
05.09.2010, 13:09
    #36830100
meg17m
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Запуск скрипта на CRON
У меня тоже возникла проблема. Есть 2 скрипта на сервере:
Первый прописал в кроне:
Код: plaintext
/usr/bin/php -f ~/www/mysite.com/mynewssite_cron/index.php  1 >/dev/ null   2 >& 1 
- каждый час отрабатывает на ура.

Второй пытался вписать по аналогии:
Код: plaintext
/usr/bin/php -f ~/www/news.mysite.com/rsscreate.php  1 >/dev/ null   2 >& 1 
- не работает, хоть ты тресни.
Причем, если вызвать news.mysite.com/rsscreate.php, отрабатывает, естественно, корректно.

Директория www/news.mysite.com существует. Права на оба скрипта - 644.
Неработающий скрипт генерит каждый раз rss.xml и перезаписывает туда последние новости.
Подскажите, в чем может быть проблема плиз.
...
Рейтинг: 0 / 0
05.09.2010, 13:35
    #36830107
ScareCrow
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Запуск скрипта на CRON
и какую ошибку выдает?
...
Рейтинг: 0 / 0
05.09.2010, 13:40
    #36830111
meg17m
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Запуск скрипта на CRON
ScareCrowи какую ошибку выдает?

В том то и дело, что никакой не выдает. Вроде отрабатывает (чистая белая страница), но результата - ноль.
...
Рейтинг: 0 / 0
05.09.2010, 15:23
    #36830189
meg17m
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Запуск скрипта на CRON
В общем, немного потестил. Если поставить внутри скрипта запрос на вставку в БД. И запустить скрипт кроном - все вставляет. Но при этом редактировать файл rss.xml не хочет. Ставил 777 на него - не помогает. Вывод один: возможно эту операцию как-то запретил хостер.
...
Рейтинг: 0 / 0
05.09.2010, 16:15
    #36830225
ScareCrow
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Запуск скрипта на CRON
авторНо при этом редактировать файл rss.xml не хочет.
так и говорит- нехочу?
...
Рейтинг: 0 / 0
05.09.2010, 16:23
    #36830232
meg17m
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Запуск скрипта на CRON
В общем, вся проблема была в путях. Если запускать Кроном, нужно указывать полный путь:
Код: plaintext
 chdir ("/home/mysite/data/www/news.mysite.com");
...
Рейтинг: 0 / 0
Период между сообщениями больше года.
19.09.2013, 12:59
    #38401350
byiigor
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Запуск скрипта на CRON
MegaLasta,

Еще может быть ошибка в указании расширения файла :
http://joyit.ru/administrirovanie/20-flashplugin-installer-ubuntu-proxy.html
...
Рейтинг: 0 / 0
19.09.2013, 13:04
    #38401358
vkle
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Запуск скрипта на CRON
byiigorЕще может быть ошибка в указании расширения файлаЗачем повторяться? Полный путь предусматривает так же и полное имя файла. Включая "расширение", если таковое существует.
...
Рейтинг: 0 / 0
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / Запуск скрипта на CRON / 24 сообщений из 24, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]