Ustvarjanje cronjoba ali opravila (in kaj storiti, če se ne izvaja)
S cron opravilom (v DirectAdmin: Cron Jobs) skripta samodejno teče ob določenih časih, na primer vsako noč. Spodaj preberite, kako ga ustvarite in kaj storiti, če ne deluje.
Pravila za cron opravila
- Opravilo naj se zažene največ enkrat na 10 minut. To prosimo vse uporabnike, saj strežnik delite z drugimi spletnimi mesti.
- Več cron opravil razporedite skozi čas in izberite miren termin, na primer 03:17 namesto točno polnoči.
- Zahtevna cron opravila, ki strežnik dolgo obremenjujejo, niso dovoljena. Na istem strežniku teče več spletnih mest. Po potrebi cron opravilo ustavimo. Zato naj bodo Vaša opravila kratka in naj ne tečejo pogosteje, kot je potrebno.
Ustvarjanje cron opravila
- Prijavite se v DirectAdmin in pod Advanced Features kliknite Cron Jobs.
- Kliknite Create Cron Job.
- Vnesite minuto, uro, dan, mesec in dan v tednu. Pri minuti nikoli ne vpišite samo zvezdice, sicer se opravilo izvaja vsako minuto. Uporabite število ali na primer
*/15za vsakih 15 minut. - Pri ukazu vnesite celotno pot, na primer:
/usr/local/bin/php -q /home/gebruiker/domains/jouwdomein.nl/public_html/taak.php
gebruiker zamenjajte s Svojim uporabniškim imenom za DA. - Kliknite Create.

E-pošta po vsakem cron opravilu
Izpis cron opravila se pošlje na privzeti e-poštni račun Vašega paketa, glejte Privzeti e-poštni račun v DirectAdmin. Izpis lahko pošljete tudi na lasten naslov z možnostjo Send all Cron output to E-Mail. Če e-pošte ne želite, pri ustvarjanju kliknite Prevent E-Mail ali za ukaz dodajte:
>/dev/null 2>&1
Pozor pri skriptah PHP
Skripta, ki teče iz cron opravila, ne ve, pod katero domeno teče. $_SERVER['SERVER_NAME'] in $_SERVER['DOCUMENT_ROOT'] sta prazni, vključitev (include) z relativno potjo pa lahko ne uspe. Zato na vrh skripte dodajte:
$pad = '/home/gebruiker/domains/jouwdomein.nl/public_html'; $_SERVER['SERVER_NAME'] = 'jouwdomein.nl'; $_SERVER['DOCUMENT_ROOT'] = $pad; set_include_path($pad . PATH_SEPARATOR . get_include_path());
WordPress: WP-Cron prek pravega cron opravila
WordPress ima lasten načrtovalnik, WP-Cron, za opravila, kot so načrtovane objave, preverjanje posodobitev in opravila vtičnikov. Ta ne teče ob določenih časih, temveč le, ko nekdo obišče Vaše spletno mesto. Pri malo obiskih opravila zato zaostajajo, pri veliko obiskih pa vsak obisk vzame nekaj dodatnega časa. Z običajnim cron opravilom WP-Cron teče ob določenih trenutkih.
- V
wp-config.phpnad vrstico/* That's all, stop editing! */dodajte:define( 'DISABLE_WP_CRON', true );
- V Cron Jobs ustvarite opravilo, ki teče na primer vsakih 15 minut: pri minuti vnesite
*/15, pri uri, dnevu, mesecu in dnevu v tednu pa zvezdico. Ukaz:/usr/local/bin/php -q /home/gebruiker/domains/jouwdomein.nl/public_html/wp-cron.php >/dev/null 2>&1
Če je WordPress nameščen v podmapi, jo dodajte v pot. - Naslednji dan v WordPressu pod Orodja › Zdravje spletišča preverite, da ni obvestil o načrtovanih opravilih, ki zaostajajo.
Tudi tu upoštevajte največ enkrat na 10 minut. Za večino spletnih mest zadošča vsakih 15 ali 30 minut.
Vaše cron opravilo ne teče?
Preverite te točke eno za drugo:
- Preberite izpis. Začasno odstranite
>/dev/null 2>&1in poglejte e-pošto v privzetem e-poštnem računu ali nastavite lasten naslov. Tam pogosto piše, kaj točno gre narobe. Izpis lahko zapišete tudi v dnevniško datoteko, tako da za ukaz dodate>> /home/gebruiker/cron-log.txt 2>&1. - Preverite pot. Sporočilo Could not open input file pomeni, da pot do skripte ni pravilna. Preverite v File Manager: pot se začne z
/home/gebruiker/domains/. - Preverite različico PHP. Z
/usr/local/bin/phpopravilo uporablja isto različico PHP kot Vaše spletno mesto. Če Vaša skripta deluje le na drugi različici, jo spremenite pri Select PHP version. - Ukaz preizkusite ročno. Če imate paket s Terminalom, tam prilepite ukaz in poglejte, kaj se zgodi, glejte Dostop SSH in Terminal v DirectAdmin. Brez Terminala skripto odprite v brskalniku ali jo v cron opravilu pokličite prek
curl --silent https://www.jouwdomein.nl/taak.php. - Preverite pravice. Skripta mora biti berljiva: datoteke naj imajo pravice 644, mape pa 755. Glejte Pravice datotek in map (chmod).
- Preverite čas izvajanja. Pri Cron Job will run: preverite, ali opravilo teče takrat, ko pričakujete. Če je pri minuti zvezdica, teče vsako minuto. To je prepogosto.
- Preverite, kako dolgo opravilo traja. Če opravilo traja dolgo ali se znova zažene, preden se prejšnje konča, se lahko zatakne ali pa Vaš paket doseže svoje omejitve. V tem primeru delo razdelite na več krogov.
date >> /home/gebruiker/cron-log.txt;.Glejte tudi v priročniku za DirectAdmin: Privzeti e-poštni račun Vašega paketa.
Podrobna razlaga s posnetki zaslona: Cron Jobs: samodejno izvajanje opravil v priročniku za DirectAdmin.
Želite izvedeti več? Sledite brezplačnemu tečaju WordPress, lekcija 6.3 Slike, PHP in druge pohitritve.
