Cron úloha je automatická úloha na pozadí naplánovaná na konkrétní čas. Mezi několik příkladů patří kontrola aktualizací, záloh nebo zasílání upozornění na připomenutí. Úlohy cronu jsou důležité, protože automatizují úlohy, které omezují manuální operace, aby pomohly se zabezpečením, výkonem a funkčností pro správce a všechny uživatele serveru nebo webu.
Můžete použít cPanel'sCron Job funkce pro spouštění unixových příkazů a/nebo automatizaci spouštění vašich skriptů PHP, Perl nebo Python. Chcete-li vytvořit úlohu cron, musíte se nejprve přihlásit do svého cPanelu v části „Cron Jobs “ a poté vyberte buď „Standardní “ nebo „Pokročilé .“ Můžete také zadat e-mailovou adresu, kterou démon Cron použije k odeslání výsledků úlohy.
Podle níže uvedených kroků se dozvíte, jak nastavit úlohu cron v cPanelu a spustit ji ručně.
- Jak se dostat na stránku úlohy Cron v cPanel
- Nastavení e-mailu pro oznámení a hlášení
- Jak nastavit úlohu Cron
- Nastavení úlohy Cron v cPanel
- Jak nastavit úlohu Cron v příkazovém řádku
- Určení příkazu ke spuštění
- Použití řetězce User Agent
- Ruční spuštění úlohy Cron
- Odstraňování problémů s úlohou Cron
Podívejte se na plány hostování sdílených serverů společnosti InMotion pro ekonomická řešení přizpůsobená potřebám vašich rychlých webových stránek!
Jak se dostat na stránku úlohy Cron v cPanel
- Přihlaste se do cPanelu.
- Projděte cPanel a vyhledejte Cron Job ikona. Klikněte na to.
- Poté se zobrazí stránka Cron Jobs . Horní polovina stránky vypadá následovně:
Jakmile budete nastránce Cron Jobs můžete přidat úlohy cron, přidat e-mail pro zprávy a oznámení úloh cron a spravovat existující úlohy cron ve spodní části stránky, kde jsou uvedeny.
Nastavení e-mailu pro oznámení a hlášení
Abyste mohli dostávat e-mailová upozornění na provedení a výstup úlohy cron, budete muset přidat e-mailovou adresu. e-mail cron v cPanel je výchozí nastavení uživatele účtu, ale v této části stránky úlohy cron lze zadat jinou e-mailovou adresu.
V některých případech nemůžete musíte mít vytvořen e-mail pro každý výsledek výstupu úlohy cron. Můžete například spouštět úlohu cron, která se spouští 20krát denně. Odeslání e-mailu při každém spuštění cronu může být únavné a zbytečně zatěžovat váš server.
Pokud chcete, aby úloha cron neměla žádný výstup, musíte do příkazu úlohy cron přidat následující:
mycommand >/dev/null 2>&1
„mycommand“ byste nahradili svým příkazem úlohy cron.
Jak nastavit novou úlohu Cron
Vytvoření úlohy cron lze provést v příkazovém řádku nebo prostřednictvím rozhraní cPanel. Níže si ukážeme oba způsoby.
Jak nastavit úlohu Cron v cPanel
Nastavení úlohy cron v cPanelu je zjednodušeno poskytnutím polí pro dvě hlavní části každé úlohy cron:plánování a příkaz.
Sekce plánování úlohy cron je také vybavena rozevíracím seznamem pro běžně používaná nastavení.
Nejsložitější částí vytváření úlohy cron je přidání příkazu nebo skriptu. Pokud nevíte, jak správně nastavit úlohu cron, můžete snadno způsobit problémy s vaším webem nebo serverem. Pokud se řídíte pokyny od třetí strany, buďte opatrní a pečlivě se řiďte pokyny. Abyste byli v bezpečí, před přidáním a spuštěním úlohy cron si vytvořte zálohu svého webu.
Pokud nejste obeznámeni s používáním příkazu nebo psaním skriptu, doporučujeme, abyste si promluvili nebo spolupracovali se zkušeným programátorem nebo správcem webu a nastavili vaši úlohu cron.
Když rolujete dolů na stránce Cron Job, uvidíte možnost Přidat novou úlohu Cron . Toto je snímek obrazovky rozhraní poskytovaného cPanel pro nastavení úlohy cron:
- Naplánujte si dobu běhu skriptu.
- Do příkazového řádku přidejte svůj příkaz nebo skript, který je třeba spustit.
- Klikněte na Přidat novou úlohu Cron pro uložení změn.
Když je skript uložen, uvidíte jej uvedený v tabulce níže na stránce.
Jak nastavit úlohu Cron v příkazovém řádku
Nejprve budete muset nastavit Crontab. Toto je část, která určuje, kdy bude úloha cron spuštěna. Pořadí je:
[minute][hour][day][month][weekday][command]
Toto je příklad přidání úlohy cron do cPanelu. Všimněte si, že crontab je čas a datum použité na příkaz nebo skript.
Takto by vypadal záznam na cron stránce cPanel na jednom řádku textového souboru:
41 04***/my/script -v
Tento kód znamená, že skript („/my/script -v“) se spustí:
- Všechny dny v týdnu (včetně dnů v týdnu)
- Všechny měsíce v roce
- Ve 4:41
Pracovní den je každý den v týdnu včetně víkendů. „Den v týdnu“ doslova znamená všechny dny v týdnu:pondělí – neděle.
- Běžná nastavení —Tato rozbalovací nabídka obsahuje běžně používané časové intervaly. Pokud vyberete jednu, systém nakonfiguruje všechny minuty , Hodina , Den , Měsíc a Den v týdnu textová pole pro vás.
- minuta — Počet minut mezi každým spuštěním úlohy cron nebo minuta každé hodiny, kdy si přejete spustit úlohu cron.
- Hodina — Počet hodin mezi každým spuštěním úlohy cron nebo hodina každého dne, kdy chcete úlohu cron spustit.
- Den — Počet dní mezi každým spuštěním úlohy cron nebo den v měsíci, kdy si přejete spustit úlohu cron.
- Měsíc — Počet měsíců mezi každým spuštěním úlohy cron nebo měsíc v roce, ve kterém chcete úlohu cron spustit.
- Den v týdnu — Dny v týdnu, kdy chcete spustit úlohu cron.
Při nastavování času je také dobré nastavit, aby cron běžel v lichou minutu, místo horní nebo dolní části hodiny. Výše uvedený příklad běží ve 4:41.
Návrh použít lichou minutu je proto, že mnoho úloh cron je vždy nastaveno tak, aby se spouštěly v běžných časech. To znamená, že server může zaznamenat náhlou ztrátu výkonu, protože se v těchto běžných časech pokouší zpracovat mnoho úloh cron. Nastavení úlohy cron tak, aby začínala v lichou hodinu, pomůže s výkonem serveru.
Pokud jste však na dedikovaném serveru a víte, jaké úlohy cron běží, pak je v pořádku používat tyto běžné časy, protože všechny systémové prostředky budou vyhrazeny pouze vašemu webu nebo aplikaci.
Určení příkazu ke spuštění
Když použijete příkaz pro úlohu cron, bude mít dvě části:
[program to execute (perl/pyth/php)][switches][script]
Program, který se má spustit, určí typ skriptu, který spouštíte, a bude to buď:
- php
- Python
Budete potřebovat vědět, kde byl váš skript uložen. Bude volána na své přímé cestě, protože je umístěna na našem serveru, takže to bude něco podobného jako /home/userna5/public_html/path/to/scrip t, s „userna5 ” je vaše uživatelské jméno.
Skripty Perl/CGI by měly být ve vašem cgi-binu s oprávněním 755. Další informace naleznete v našem článku o oprávněních k souborům. Zde jsou příklady skriptů úloh cron se skripty PHP, Python nebo Perl/CGI:
- Spuštění skriptu PHP: php -q /home/usern5/public_html/scripts/testrun.php
- Pro skripty Python: python /home/usern5/public_html/path/to/script
- Pro skripty Perl/CGI: /home/usern5/public_html/cgi-bin/yourscript.pl
Při vytváření skriptů úloh cron můžete použít jakýkoli typ textového editoru. Ujistěte se, že víte, kam jste jej uložili (se správnými oprávněními), jak je uvedeno výše.
Použití řetězce User Agent
Obecná definice uživatelského agenta z World Wide Web Consortium (W3.org) je:
Uživatelský agent je jakýkoli software, který načítá a prezentuje webový obsah pro koncové uživatele nebo je implementován pomocí webových technologií . Mezi uživatelské agenty patří webové prohlížeče, přehrávače médií a zásuvné moduly, které pomáhají při načítání, vykreslování a interakci s webovým obsahem.
Použití řetězce uživatelského agenta je považováno za volitelné, ale je zahrnuto v tomto článku pro vývojáře, kteří mohou stále chtít zvážit jeho použití.
wget příkaz je zakázán na všech sdílených serverech z bezpečnostních důvodů. Většina skriptů, které se spouští prostřednictvím wget lze použít s rysem nebo zvlnit příkaz. Nová pravidla mod_security, která byla použita s nejnovějšími aktualizacemi PHP, zabrání lynx a curl fungovat, pokud není nastaven uživatelský agent. Chcete-li nastavit uživatelského agenta, můžete použít následující příkaz:
- curl –user-agent VÁŠ_STRING (URL)
- lynx -dump -useragent=VÁŠ_ŘETĚZEC (URL)
Váš úplný příkaz úlohy cron by nakonec vypadal takto:
/usr/bin/curl --user-agent cPanel-Cron https://example.com/cron.php
Ruční spuštění úlohy Cron
V některých případech může být potřeba spustit úlohu cron neplánovaně a ručně. To se často provádí pro odstraňování problémů se skripty nebo testování, nebo v některých případech může být jednoduše potřeba okamžitě spustit skript pro jeho funkčnost. Můžete mít například skript, který vymaže mezipaměť, ale chcete, aby se okamžitě spustil místo čekání na naplánovaný čas.
UPOZORNĚNÍ:Při ručním spouštění úlohy cron buďte opatrní. Než skript spustíte naslepo, pochopte, co dělá. Skripty se mohou lišit od zálohování vašeho webu až po vymazání mezipaměti. Může to ovlivnit to, co uvidí vaši diváci, provoz vašeho webu a výkon vašeho serveru.
Když spustíte úlohu cron ručně, pak jste buď okamžitě spuštění příkazového řádku v terminálu nebo spouštíte skript, který by měl být přístupný prostřednictvím webové stránky.
Úloha cron se provádí na základě plánu. Ruční spuštění odstraní časové omezení, protože jej spustíte okamžitě.
Příklad ručního provedení úlohy cron PHP:
Všimněte si, že budete potřebovat vědět, kde se tento skript nachází. Můžete také spustit PHP skript přímo z prohlížeče, pokud máte URL pro jeho spuštění.
Můžete například otevřít libovolný prohlížeč a použít adresu URL jako je tato:
https://example.com/scripts/mydailyscript.php
Spuštění příkazu Linuxu, který NENÍ ve skriptu, by se jednoduše spustilo přímo v terminálu. Budete muset přistupovat k webu prostřednictvím terminálu s příslušnými přístupovými právy. Jinak je ruční spuštění skriptu stejné jako u skriptu PHP výše.
Cron Job Troubleshooting
Obecně můžete zjistit, zda byla vaše úloha cron spuštěna na základě oznámení nebo výstupu, který jste obdrželi při spuštění úlohy cron. Pokud si chcete být jisti, že úloha cron proběhla, zkontrolujte protokoly. Další informace naleznete v části:Jak zkontrolovat, zda byla spuštěna úloha Cron (protokol Crontab).
Gratulujeme! Nyní, když víte, jak nastavit úlohu cron a spustit v cPanel, můžete přidávat opakující se úlohy, které chcete řídit podle vlastního plánu.
Posuňte své podnikání na další úroveň! Seznamte se se svými zákazníky online pomocí řešení sdíleného hostování společnosti InMotion.