Webhosting – cron

  Administrace, Nastavení, Webhosting, WMS

Co je to CRON?

CRON je automatizovaný nástroj, který v určený čas spouští nastavené úlohy. Typicky PHP skript, který má třeba aktualizovat databázi, nebo vám zaslat e-mail s přehledem aktuální situace. Může sloužit jako plánovač úloh. Na webhostingu je k dispozici v zjednodušené formě se snadným nastavením.

Webhosting NoLimit

U každého webhostingu mohou být max. 3 záznamy CRONu. Nejkratší možná perioda spouštění je 1 hodina. Pro více CRONů nebo kratší periody spouštění slouží příplatková služba CRON+.

Příplatková služba CRON+

Pokud potřebujete více CRONů na webhostingu nebo kratší periody spouštění, nabízíme příplatkovou službu CRON+. Maximální počet záznamů je navýšen na 10 a nejkratší možný interval spouštění je 5 minut.

hostingové služby > Webhosting > název vašeho webhostingu > příplatkové služby > CRON+ > aktivovat >>

WMS

V případě WMS webhostingu neomezujeme počet CRONů a periody spouštění jsou volitelné v rozmezí 5 minut až 12 hodin. Není potřeba aktivovat žádnou příplatkovou službu.

Možnosti nastavení

  • Název: váš popis, lze uvést cokoli
  • Spouštět 1x za: určuje intervaly spouštění
    • – nespouštět – (vypnuto)
    • 5 minut (každá vyhovující 5.minuta, počínaje půlnoci)
    • 15 minut (každá vyhovující 15. minuta, počínaje půlnocí)
    • 30 minut (každá vyhovující 30. minuta, počínaje půlnocí)
    • 1 hodina (každá vyhovující hodina, počínaje půlnocí, v 0 minut)
    • 2 hodiny (každá vyhovující sudá hodina, počínaje půlnocí, v 0 minut)
    • 4 hodiny (každá vyhovující 4. hodina, počínaje půlnocí, v 0 minut)
    • 6 hodin (každá vyhovující 6. hodina, počínaje půlnocí, v 0 minut)
    • 12 hodin (každá vyhovující 12. hodina, počínaje půlnocí, v 0 minut)
  • Hodiny ve dne: spouštění bude omezeno pouze na intervaly, které vyhovují zadanému časového úseku, při sestupném zadání zasahuje do dalšího dne
  • Dny v týdnu: určuje v kterých dnech se má CRON spustit
  • Datum: omezuje datum platnosti CRONu, zadávejte ve formátu RRRR-MM-DD (tedy například 2020-12-31)
  • URL skriptu: lze volit mezi protokoly http a https, lze uvést subdoménu, lze vybrat z domén a aliasů webhostingu, lze zadat cestu ke konkrétnímu skriptu. Snažte se zadat co nejpřesnější URL – nejlépe si skript otevřete v prohlížeči a zadejte správně http/s protokol, subdoménu www či jinou (pokud je využita) i název souboru a cestu k němu

Nastavení CRONu

Nastavení CRONu naleznete v zákaznické administraci, v záložce Hostingové služby > Webhosting nebo WMS. Klikněte na název vašeho webhostingu, tím přejdete na jeho detail. U WMS nejdříve zvolte konkrétní WMS a pak detail konkrétního webhostingu. V levém menu pak uvidíte odkaz Cron.

Hostingové služby > Webhosting > váš webhosting > Cron > CRON – nový

Příklady využití v praxi a správné zadání

POZOR! Je nutné mít k dispozici skript, který vykoná všechny potřebné operace. Pomocí CRON se jen tento skript v určený čas spustí. Skripty v příkladech slouží jen k ukázce nastavení, reálně neexistují a nejde o připravené funkce webhostingu.

Co se stane při spuštění CRONu? CRON bude v požadovaném intervalu spouštět zadaný soubor. V něm by měl být připravený skript, který provede vše potřebné. Zavolá tedy soubor, jako byste ho ve svém prohlížeči spustili vy sami – jen na to nemusíte myslet a spuštění proběhne automaticky. Všechny další operace už pak záleží jen na spuštěném souboru. Nic jiného CRON neprovádí.

Aktualizace produktů v e-shopu
Skript: http://www.wds-test.cz/aktualizace.php
Kdy: každou hodinu, nonstop

každou hodinu se spustí soubor aktualizace.php, který by měl zajistit aktualizaci produktů v e-shopu – budou tam příkazy pro spuštění aktualizace a nebo samotný proces stažení nových dat a aktualizace

Rozeslání pracovních úkolů všem zaměstnancům
Skript: http://wds-test.cz/firma/prace/prace.php
Kdy: v pracovních dnech, pracovních hodinách, 1x za 6 hodin

tento CRON se spustí 3x během pracovní doby, v souboru /firma/prace/prace.php může být třeba rozeslání úkolů zaměstnancům

Kontrola stavu e-shopu během Vánoc
Skript: https://vanocniobchod.wds-test.cz/vanoce.php
Kdy: mezi 20. a 31. prosincem 2020, každých 30 minut v pracovních hodinách

tento skript může každou půlhodinu kontrolovat třeba příchozí reklamace během vánočního období a dá vám o nich vědět e-mailem

Kontrola příchozích plateb
Skript: https://www.wds-test.cz/platba.php
Kdy: každých 5 minut, nonstop

tento skript může v krátkých intervalech kontrolovat nové příchozí platby a upozorňovat vás na ně e-mailem

Skript s tajným parametrem
Skript: https://www.wds-test.cz/soukrome.php?data=93837282
Kdy: každých 6 hodin, ale jen se správným parametrem

Proč: parametr v tomto případě používáme jako ochranu proti nechtěnému spuštění, které by mohlo uškodit (třeba při indexaci vyhledávači nebo při náhodném přístupu od návštěvníka). Proces bude spuštěn jen při zavolání URL se správným parametrem a nikdo jiný než takto nastavený CRON jej pravděpodobně nikdy nezavolá.

tento skript se spustí každých 6 hodin, ale jen při znalosti správného parametru – ten budete znát jen vy a vložíte jej do adresy CRONu

CRON pro aliasovou doménu
Skript: http://www.wds-test.eu/alias.php
Kdy: 1x za 24 hodin, vždy v půlnoci

CRON se spustí pro aliasovou doménu (můžete si ji vybrat v označené oblasti), vždy o půlnoci

Úprava / smazání CRON úlohy

K úpravě slouží tlačítko upravit v seznamu CRON úloh. Po jeho stisknutí se pod seznamem úloh otevře detail úlohy s možností zadání změn.

K smazání slouží tlačítko smazat v seznamu CRON úloh. Po jeho stisknutí a potvrzení bude úloha zrušena a zmizí.

k editaci nebo odstranění CRONů slouží tlačítka v seznamu CRONů

Důležité informace

  • přes CRON lze volat pouze skripty na konkrétním webhostingu, nelze volat jiné URL, skripty z jiného webhostingu nebo spouštět příkazový řádek, proběhne pouze zavolání URL
  • nezasílají se notifikace ani se dále nezpracovává výstup
  • pro skripty, spuštěné CRONem, platí standardní parametry PHP
  • nelze 100% garantovat, že se skript spustí přesně v určenou minutu, z povahy služby dochází na serveru v exponované časy ke spuštění mnoha skriptů najednou a spouštění se tak může zdržet
  • pokud je to potřeba, mějte v skriptu připravený systém zámků, který zabrání škodám v případě zpožděného nebo opakovaného spuštění
  • nelze využívat HTTP autentizaci, doporučujeme to řešit spíše vložením tajného řetězce do URL
  • neomezujte vykonávání skriptu na konkrétní IP, nemůžeme zaručit, že se nebude měnit

Často kladené dotazy

CRON neprovedl žádnou akci.

CRON je tu pouze od zavolání PHP nebo jiného skriptu. Všechny akce musí provést PHP skript. CRON pouze zajistí, že se skript ve vhodnou dobu spustí. Ohledně přípravy PHP skriptu se poraďte se svým programátorem.

Mohu mít jen 3 CRON úlohy, potřebuji jich více.

Nabízíme jich až 10. Aktivujte si příplatkovou službu CRON+. U služby WMS jejich počet není omezený.

Potřebuji detailnější nastavení CRONu.

CRON na sdíleném webhostingu musí být v principu jednoduchá a snadno pochopitelná služba i pro méně zkušené uživatele. Pokud potřebujete přidat další možnosti, implementujte je třeba jako podmínky do svého skriptu. Ten pak může být spuštěn každých 5 minut a sám rozhodne, která akce má nebo nemá v daný čas proběhnout.