Cronjob vai uzdevuma izveide (un ko darīt, ja tas netiek izpildīts)
Ar cron uzdevumu (DirectAdmin: Cron Jobs) Jūs varat automātiski palaist skriptu noteiktos laikos, piemēram, katru nakti. Tālāk uzzināsiet, kā to izveidot un kā rīkoties, ja tas nedarbojas.
Noteikumi cron uzdevumiem
- Palaidiet uzdevumu ne biežāk kā reizi 10 minūtēs. To lūdzam no visiem, jo serveri Jūs koplietojat ar citām vietnēm.
- Sadaliet vairākus cron uzdevumus laikā un izvēlieties mierīgu laiku, piemēram, 03:17, nevis tieši pusnakti.
- Smagi cron uzdevumi, kas ilgstoši noslogo serveri, nav atļauti. Uz tā paša servera darbojas arī citas vietnes. Nepieciešamības gadījumā mēs cron uzdevumu apturam. Tāpēc uzturiet savus uzdevumus īsus un nepalaidiet tos biežāk, nekā nepieciešams.
Cron uzdevuma izveide
- Piesakieties DirectAdmin un sadaļā Advanced Features noklikšķiniet uz Cron Jobs.
- Noklikšķiniet uz Create Cron Job.
- Norādiet minūti, stundu, dienu, mēnesi un nedēļas dienu. Minūtes laukā nekad neievadiet tikai zvaigznīti, citādi uzdevums tiks izpildīts katru minūti. Izmantojiet skaitli vai, piemēram,
*/15, lai to izpildītu ik pēc 15 minūtēm. - Komandas laukā norādiet pilnu ceļu, piemēram:
/usr/local/bin/php -q /home/gebruiker/domains/jouwdomein.nl/public_html/taak.php
Aizstājiet gebruiker ar savu DA lietotājvārdu. - Noklikšķiniet uz Create.

E-pasts pēc katra cron uzdevuma
Cron uzdevuma izvade tiek nosūtīta uz Jūsu pakas noklusējuma e-pasta kontu, skatiet Noklusējuma e-pasta konts DirectAdmin. Izvadi varat sūtīt arī uz savu adresi, izmantojot Send all Cron output to E-Mail. Ja e-pastu nevēlaties saņemt, izveides laikā noklikšķiniet uz Prevent Email vai pievienojiet komandas beigās:
>/dev/null 2>&1
Ievērībai par PHP skriptiem
Skripts, kas tiek palaists no cron uzdevuma, nezina, zem kura domēna tas darbojas. $_SERVER['SERVER_NAME'] un $_SERVER['DOCUMENT_ROOT'] ir tukši, un include ar relatīvu ceļu var neizdoties. Tāpēc skripta sākumā ievietojiet:
$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 ar īstu cron uzdevumu
WordPress ir savs plānotājs, WP-Cron, tādiem uzdevumiem kā ieplānotas ziņas, atjauninājumu pārbaude un spraudņu uzdevumi. Tas nedarbojas noteiktos laikos, bet tikai tad, kad kāds apmeklē Jūsu vietni. Ja apmeklētāju ir maz, uzdevumi kavējas, bet, ja apmeklētāju ir daudz, katrs apmeklējums aizņem nedaudz vairāk laika. Ar parastu cron uzdevumu WP-Cron darbojas noteiktos brīžos.
- Failā
wp-config.phpvirs rindas/* That's all, stop editing! */ievietojiet:define( 'DISABLE_WP_CRON', true );
- Sadaļā Cron Jobs izveidojiet uzdevumu, kas tiek izpildīts, piemēram, ik pēc 15 minūtēm: minūtes laukā ievadiet
*/15, bet stundas, dienas, mēneša un nedēļas dienas laukā zvaigznīti. Komanda:/usr/local/bin/php -q /home/gebruiker/domains/jouwdomein.nl/public_html/wp-cron.php >/dev/null 2>&1
Ja WordPress atrodas apakšmapē, iekļaujiet to ceļā. - Nākamajā dienā WordPress sadaļā Rīki › Vietnes veselība pārbaudiet, vai nav paziņojumu par ieplānotiem uzdevumiem, kas kavējas.
Arī šeit ievērojiet ierobežojumu: ne biežāk kā reizi 10 minūtēs. Lielākajai daļai vietņu pietiek ar izpildi ik pēc 15 vai 30 minūtēm.
Jūsu cron uzdevums netiek izpildīts?
Pārbaudiet šos punktus pa vienam:
- Izlasiet izvadi. Uz laiku noņemiet
>/dev/null 2>&1un apskatiet e-pastu noklusējuma e-pasta kontā vai iestatiet savu adresi. Tur bieži ir precīzi norādīts, kas notiek nepareizi. Izvadi varat ierakstīt arī žurnālfailā, pievienojot komandas beigās>> /home/gebruiker/cron-log.txt 2>&1. - Pārbaudiet ceļu. Paziņojums Could not open input file nozīmē, ka ceļš uz skriptu nav pareizs. Apskatiet sadaļā File Manager: ceļš sākas ar
/home/gebruiker/domains/. - Pārbaudiet PHP versiju. Ar
/usr/local/bin/phpuzdevums izmanto to pašu PHP versiju, ko Jūsu vietne. Ja Jūsu skripts darbojas tikai ar citu versiju, mainiet to sadaļā Select PHP version. - Pārbaudiet komandu manuāli. Ja Jūsu pakā ir Terminal, ielīmējiet komandu tur un vērojiet, kas notiek, skatiet SSH piekļuve un Terminal DirectAdmin. Bez Terminal atveriet skriptu pārlūkprogrammā vai izsauciet to cron uzdevumā ar
curl --silent https://www.jouwdomein.nl/taak.php. - Pārbaudiet tiesības. Skriptam jābūt lasāmam: failiem jābūt iestatītiem uz 644, bet mapēm uz 755. Skatiet Failu un mapju tiesības (chmod).
- Pārbaudiet laiku. Pie Cronjob will be executed: pārbaudiet, vai uzdevums tiek izpildīts tad, kad Jūs to sagaidāt. Ja minūtes laukā ir zvaigznīte, tas tiek izpildīts katru minūti. Tas ir pārāk bieži.
- Pārbaudiet, cik ilgi uzdevums ilgst. Ja uzdevums ilgst ilgi vai sākas no jauna, pirms iepriekšējais ir pabeigts, tas var iestrēgt vai likt Jūsu pakai sasniegt savus ierobežojumus. Šādā gadījumā sadaliet darbu vairākās kārtās.
date >> /home/gebruiker/cron-log.txt; pirms savas komandas.Skatiet arī DirectAdmin rokasgrāmatā: Jūsu pakas noklusējuma e-pasta konts.
Plašāks skaidrojums ar ekrānuzņēmumiem: Cron Jobs: uzdevumu automātiska izpilde DirectAdmin rokasgrāmatā.
Vēlaties uzzināt vairāk? Apgūstiet bezmaksas WordPress kursu, nodarbība 6.3 Attēli, PHP un citi ātruma uzlabojumi.
