HostDB.ru
 
Логин

Пароль



или войдите через соцсеть:
провайдеров: 174, переходов на сайты провайдеров сегодня: 39
Хостинг Hostlife

Голосование

Каков на Ваш взгляд спрос на Django (Python) хостинг?







Анекдот




Предложить идею


- Использование Cron на хостинге

Использование Cron на хостинге

Cron - это система для автоматического запуска программ и скриптов на сервере в определённое время. Каждый пользователь системы имеет свой файл заданий crontab, в котором описано, в какое время и какие программы запускать от имени этого пользователя. Редактирование файла crontab возможно как при помощи интерфейса панели управления так и при помощи специальной одноименной программы crontab.

Общие сведения по работе

В случае если какое-то из запускаемых Вами заданий делает вывод информации в консоль (например, скрипт на PHP делает echo("...") ), все то, что он выводит, отправляется на электронную почту. По умолчанию эти данные отправляются на адрес, указанный в панели управления как технический e-mail. Вы можете изменить это поведение, прописав первой строчкой crontab-файла MAILTO=your@e-mail.ru. В таком случае вывод всех команд будет отправляться на your@e-mail.ru.

Кроме этого, отправку выводных данных какой-то из команд в crontab можно подавить. Для этого в конец соответствующей строчки, запускающей эту команду, в файле crontab нужно добавить переадресацию: > /dev/null, Например:

/usr/bin/php cronjobs.php > /dev/null

Если скрипт выводит сообщения в поток ошибок, которые тоже желательно подавить, то можно использовать конструкцию следующего вида:

/usr/bin/php cronjobs.php 2> /dev/null

Для подавления всего вывода скрипта (на stdout и stderr) можно использовать такую конструкцию:

/usr/bin/php cronjobs.php 1> /dev/null 2>&1

Довольно часто нам приходится сталкиваться с ситуацией, когда программисты не понимают, как именно происходит запуск скриптов в cron и чем он отличается от запуска этих же скриптов через веб-сервер (т.е. от вызова скрипта по адресу http://sitename.ru/path/to/script.php). Дело в том, что когда скрипт запускается через вызов в браузере (или вызов wget'ом), интерпретатор PHP перед запуском скрипта переходит в папку, где располагается этот скрипт. Поэтому в скрипте работают такие вещи как include("./somefile.php"), подключающие файл из той же директории, где сам скрипт.

Когда этот же скрипт запускается из Cron'а, он устанавливает в качестве "текущей" домашнюю директорию вашего аккаунта. Соответственно, если у вас в crontab прописано что-то вроде

/usr/bin/php sitename.ru/www/path/to/script.php

то script.php будет запущен без перехода в папку sitename.ru/www/path/to. Если данному скрипту для работы необходимо, чтобы он запускался только из папки sitename.ru/www/path/to, необходимо сделать явный переход в эту папку перед запуском. Самый простой вариант сделать это - модифицировать строчку в crontab-файле следующим образом:

cd sitename.ru/www/path/to && /usr/bin/php script.php

Так же хотим вас предостеречь от вызова ваших утилит Cron'ом через wget (типа wget http://sitename.ru/path/to/script.php). Дело в том, что у PHP, запущенного через Apache, есть целый ряд ограничений, в т.ч. и на время работы скрипта. Если ваш Cron-скрипт работает достаточно долго, он может просто не успевать отработать до конца, прежде чем его работа будет принудительно завершена. Кроме того, на работу таких скриптов будут оказывать влияния перезагрузки веб-сервера, выполняемые периодически, а также лимиты на количество процессов PHP, которые разрешены для запуска через Apache.



Опубликовано: 09.07.2016
Просмотров: 306
Автор: NetAngels
Источник: https://www.netangels.ru/

 
Версия для печати

Мой комментарий

Ваше имя*:
Email:
Комментарий*:
Зарегистрироваться автоматически: Вы будете зарегистрированы на сайте автоматически при добавлении комментария. Обязательно заполните поле Email для этого.
Сумма чисел 5 и 14*:            


Хостинг Старт! Россия/Нидерланды.
50000 Мб на диске, неогр. трафик.
99 руб.
Хостинг провайдер Well-Web
VDS Старт
30000 Мб на диске, RAM 1024 Мб, 3600 Мгц, неогр. трафик.
490 руб.
Хостинг провайдер Well-Web
Восток-1
3000 Мб на диске, неогр. трафик.
110 руб.
Хостинг провайдер SPRINTHOST.RU

Заявка на хостинг
Провайдеры сами пришлют
вам свои предложения ;)

Хостинг быстрее быстрого от Fozzy

Проверка IP

Ваш IP ....... 107.22.102.16 ← Проверить
Страна ..... не определена

Проверка домена (+whois)













Выбрать все
Расширенный поиск (более 50 зон)

Traceroute

Начало маршрута



Акции провайдеров

Все акции хостинг провайдеров


HyperHost - твой, приятный хостинг!