Създаване на cron задача
Можете да създавате т.нар. CRON задачи (cron jobs), тоест програми, които се изпълняват в предварително зададено време. Не е разрешено да създавате cron задачи, които се изпълняват по-често от веднъж на 10 минути. Тежки cron задачи (които натоварват процесора изключително много) също не са разрешени. На един сървър работят и много други уебсайтове. Вие не искате да Ви пречат другите, а и другите не искат Вие да им пречите. При нужда WebOké може да прекратява cron задачи. Правилото е, че една cron задача не може да работи по-дълго от 10 секунди. Ако искате cron задачите да се изпълняват по-често, това е разрешено от пакетите POWER WEBHOST нагоре.
Ако създадете няколко cron задачи, това важи за общия им брой, тоест моля, стартирайте най-много 1 cron задача на 10 минути. Разпределете добре cron задачите си, това е от полза за производителността на сървъра.
В cron задачата си за предпочитане добавете този ред: set_time_limit(10). Така cron задачата ще спре, ако продължи повече от 10 секунди. Cron задачата се въвежда от контролния панел.
Как изглежда една cron задача
Cron задача, която например стартира PHP програма, изглежда така:
/usr/local/bin/php -q /home/<usrdir>/domains/<uwdomein.xx>/public_html/<taak.php>
Заменете <usrdir> с потребителското име в DirectAdmin, <uwdomein.xx> с домейна си и <taak.php> с PHP скрипта си.
Изпращане на имейл след всяка cron задача
По подразбиране се изпраща имейл до стандартния Ви имейл акаунт. В него се показват евентуалните грешки от cron, както и евентуални команди за извеждане. Можете да прегледате тази пощенска кутия на webmail.weboke.nl, като въведете името на акаунта си като потребителско име, паролата и името на сървъра. Ако не искате вече да получавате имейл всеки път, добавете това след cron задачата: /dev/null 2>&1
Пътищата са малко по-различни от тези през FTP
Трябва да поставите пълния път до PHP отпред и пълния път на сървъра до PHP програмата. Това е различно от FTP: сега отпред стои /home/usrdir. Заменете usrdir със собственото си потребителско име (това на контролния панел).
Важно!! Cron задачата не знае домейн
Имайте предвид, че PHP програмата, стартирана от cron задача, не знае под кой уебсайт работи. $_SERVER['SERVER_NAME'] е празно, а и всеки include ще се провали, защото няма основен път!!
Примерен код, който да добавите в cron програмата, за да избегнете това:
- $pad = "/home/<usrname>/domains/<uwdomein.xx>/public_html"; (не забравяйте да замените <usrdir> и <uwdomein.xx>!!!)
- $_SERVER['SERVER_NAME'] = 'imenadomein.xx';
- $_SERVER['DOCUMENT_ROOT'] = $pad;
- set_include_path($pad . PATH_SEPARATOR . ini_get("include_path"));
