Выполнение файла в cron

dima333

Новичок
Выполнение файла в cron

Как можно сделать чтобы в cron каждый день в 7 часов выполнялся файл indexsaciya.php :confused:
 

Активист

Активист
Команда форума
Можно еще так, если фраза php cli тебя загнала в тупик
0 7 * * * * /usr/local/bin/curl http://moi-pervii-yandex.net/indexsaciya.php >/dev/null 2>&1
 

dimagolov

Новичок
Активист, дирол, орбит?

dima333, не вздумай делать тот бред, что написал Активист.

у тебя скрипт indexsaciya.php имеет зависимости от веб сервера? то есть какие параметры из окружающего мира он получает?
 

fixxxer

К.О.
Партнер клуба
я конечно понимаю что могут быть нужны права под которыми работает веб сервер, но хоть какую то защиту надо делать - что если я напишу в адресной строке http://moi-pervii-yandex.net/indexsaciya.php и зажму F5? ;)
 

grigori

( ͡° ͜ʖ ͡°)
Команда форума
Yuriy_S
при том, что скрипт для исполнения по крону надо писать немного не так, как для сайта

нет сессий, GET, POST, имени сайта, некуда делать echo, другие права исполнения, другой текущий каталог

зато есть параметры командной строки

и все это прийдется изучить по документации
 

grigori

( ͡° ͜ʖ ͡°)
Команда форума
Garret, тебе повторить сообщение dimagolov-а? ;)
output задач крона теоретически идет в письмо пользователю или админу, а на хостинге скорее всего в никуда
 

nds88

Новичок
Доброго времени суток. Давно сюда не заглядывал... Не стал создавать новую тему, нашёл более подходящую по названию. Не являюсь профи PHP, пишу для себя. Сразу прошу не судить строго за возможные глупости и непрофессиональные формулировки вопросов которые буду писать ниже и сдерживать профессиональные нападки в сторону NOOB'a)...
В общем суть такова... Имеется Web - оболочка, которая получает через cUrl данные в Json с другого сервера, имеется авторизация, после которой, нужную часть пишет в свою БД и выводит на экран в обработанном виде. Есть проверка на изменение данных, т.е. данные обновлённые на сервере перезаписываются в БД. Возникла потребность запускать эту проверку не открывая сайт. Пути поисков привели к CRON. Как запустить отдельный файл я почитал и примерно понял... Но осталось несколько вопросов, например как быть с авторизацией... Суть думаю более менее понятна, если кого либо заинтересует и попробует помочь, могу больше раскрыть тему, и привести нужные куски кода. Ежели нет, буду благодарен хотя бы за ссылки на ресурсы которые могут мне помочь... Thanx
 

fixxxer

К.О.
Партнер клуба
Если тебе в задаче, запускаемой кроном, нужна авторизация, ты что-то делаешь неправильно
 

nds88

Новичок
Если тебе в задаче, запускаемой кроном, нужна авторизация, ты что-то делаешь неправильно
Т.е. если я правильно понимаю, для крона нужно создать отдельный PHP скрипт, с уже пройденной авторизацией и дальнейшей обработкой?
 

fixxxer

К.О.
Партнер клуба
Если процесс обработки завязан на авторизованного пользователя, то уже в этом месте что-то сделано неправильно.
Но если лень переделывать, в принципе, если ты знаешь, в контексте какого пользователя нужно сделать обработку, можно и так.
 

nds88

Новичок
Если процесс обработки завязан на авторизованного пользователя, то уже в этом месте что-то сделано неправильно.
Но если лень переделывать, в принципе, если ты знаешь, в контексте какого пользователя нужно сделать обработку, можно и так.
Спасибо. Понял обе мысли. Просто дело в том что для того что бы получить данные с удалённого сервера, нужна авторизация на том сервере, выполняется на cUrl.
данные с моей формы авторизации передаются на тот сервер, в ответ отправляется Json строка и там создаётся сессия, которая позволяет делать дальнейшие запросы. В принципе можно было бы сделать что бы при открытии index'ного файла сразу выполнялась авторизация админа, начинались нужные обработки, а для дальнейших действий ожидалась авторизация уже здесь на сайте, что в принципе тоже считаю логичным (подумаю над этим), но тогда нужно логин и пароль сразу задавать константами, побоялся это делать в целях безопасности в силу своей малоопытности, и плюс не очень нравится момент что каждый неавторизованный юзер будет по каждому рефрешу запускать эти обработки...
 

fixxxer

К.О.
Партнер клуба
Неа, не понял :)

На удаленном-то сервере в любом случае ты используешь учетную запись для получения данных через api, параметры которой хранятся в конфиге или базе данных твоего приложения. Иначе возникает подозрение, что ты занимаешься нехорошими вещами :)

А на своем сервере тебе же никто не запрещает в cron-скрипте работать с любым пользователем твоего приложения по его id. Разумеется, крон-скрипт должен быть недоступен через веб.
 

nds88

Новичок
Наверное действительно не понял... Я думал, ты имеешь ввиду сразу при открытии моей страницы, отправлять запрос на авторизацию и обрабатывать данные а в крон задать периодическое открытие index.php (хотя почему то у меня до сих пор впечатление что именно это ты и имел ввиду :) ).
Параметры удалённой учетной записи нигде не храню, их всего 2 : login & pass, умещаются в голове).
Хочу уверить, нехорошими вещами, по крайней мере в контексте закона и морали не занимаюсь :)
С пользователями моего приложения в принципе работать пока необходимости нет, они так же пользователи и того удалённого сервера, созданные под моей уч.записью...
 
Сверху