Cronjobi ehk ülesande loomine (ja mida teha, kui see ei tööta)
Cron tööga (DirectAdminis: Cron Jobs) saad lasta skriptil automaatselt kindlatel aegadel käivituda, näiteks igal ööl. Allpool loed, kuidas selle looda ja mida teha, kui see ei tööta.
Cron tööde reeglid
- Webhost One ja Webhost Two pakettides võib ülesanne käivituda kõige rohkem korra 10 minuti jooksul, kõigi su ülesannete peale kokku.
- Power Webhost pakettides võivad ülesanded sagedamini töötada.
- Jaota mitu cron tööd aja peale laiali ja vali rahulik ajahetk, näiteks 03:17 täpselt kesköö asemel.
- Rasked cron tööd, mis koormavad serverit kaua, ei ole lubatud. Samal serveril töötab rohkem veebisaite. Vajaduse korral peatame cron töö. Seepärast hoia oma ülesanded lühikesed ja ära lase neil käivituda sagedamini kui vaja.
Cron töö loomine
- Logi sisse DirectAdminisse ja klõpsa rubriigis Advanced Features valikul Cron Jobs.
- Klõpsa Create Cron Job.
- Täida minut, tund, päev, kuu ja nädalapäev. Sisesta minut alati arvuna, mitte tärniga, muidu käivitub ülesanne iga minut.
- Sisesta käsu juurde täielik tee, näiteks:
/usr/local/bin/php -q /home/gebruiker/domains/jouwdomein.nl/public_html/taak.php
Asenda gebruiker oma DA kasutajanimega. - Klõpsa Create.

E-kiri pärast iga cron tööd
Cron töö väljund saadetakse su paketi vaikimisi e-postikontole, vaata Vaikimisi e-postikonto DirectAdminis. Väljundi saad saata ka oma aadressile valikuga Send All Cron Output To Email. Kui sa ei soovi e-kirju, klõpsa loomisel Prevent Emails või lisa käsu lõppu:
>/dev/null 2>&1
Tähelepanu PHP skriptide puhul
Skript, mis käivitub cron tööna, ei tea, millise domeeni all see töötab. $_SERVER['SERVER_NAME'] ja $_SERVER['DOCUMENT_ROOT'] on tühjad ning suhtelise teega include võib ebaõnnestuda. Seepärast lisa oma skripti algusesse:
$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());
Kas su cron töö ei käivitu?
Käi need punktid ükshaaval läbi:
- Loe väljundit. Eemalda ajutiselt
>/dev/null 2>&1ja vaata vaikimisi e-postikontole saadetud kirja, või määra oma aadress. Seal on tihti täpselt kirjas, mis valesti läheb. Väljundi saad kirjutada ka logifaili, lisades käsu lõppu>> /home/gebruiker/cron-log.txt 2>&1. - Kontrolli teed. Teade Could not open input file tähendab, et tee skriptini ei ole õige. Vaata Failihalduses: tee algab
/home/gebruiker/domains/. - Kontrolli PHP versiooni. Käsuga
/usr/local/bin/phpkasutab ülesanne sama PHP versiooni, mis su veebisait. Kui su skript töötab ainult teistsuguse versiooniga, muuda see lehel Select PHP version. - Testi käsku käsitsi. Kui sul on pakett koos Terminaliga, kleebi käsk sinna ja vaata, mis juhtub, vaata SSH või Terminali avamine DirectAdminis. Ilma Terminalita ava skript oma brauseris või kutsu see cron töös esile käsuga
curl --silent https://www.jouwdomein.nl/taak.php. - Kontrolli õigusi. Skript peab olema loetav: failid peaksid olema õigustega 644 ja kaustad 755. Vaata Failide ja kaustade õigused (chmod).
- Kontrolli ajahetke. Vaata real Cron Job will run:, kas ülesanne käivitub siis, kui sa arvad. Kui minuti kohal on tärn, käivitub see iga minut ja võidakse peatada.
- Kontrolli paketi piirangut. Kui ülesanne käivitub sagedamini, kui su pakett lubab, või kestab liiga kaua, katkestatakse see. Jaota töö siis mitmele käivituskorrale.
date >> /home/gebruiker/cron-log.txt;.Vaata ka DirectAdmini juhendist: Su paketi vaikimisi e-postikonto.
Põhjalik selgitus koos ekraanipiltidega: Cron Jobs: ülesannete automaatne käivitamine DirectAdmini juhendis.
