Navigare rapidă în pagină:

  • Rulați prin interfața web
  • Reguli și exemple de execuție a comenzilor cron

Utilizatorii avansați trebuie adesea să ruleze orice script php automat la un moment dat. Acest lucru poate fi necesar din mai multe motive.

De exemplu, în WordPress, unul dintre cele mai populare pluginuri de sitemap — Google XML Sitemaps — funcționează numai atunci când postarea este publicată, iar dacă faci o publicare întârziată, nu include postarea în sitemap și nu o va include până când nu publica orice postare prin intermediul administratorului fără întârziere publicarea.

Adică, dacă aveți o publicație întârziată configurată cu o lună înainte pe un site, harta xml a site-ului nu va fi actualizată în această perioadă. Această problemă poate fi rezolvată dacă un script php care pornește acest plugin este executat o dată pe zi (nu este dificil să scrii un astfel de script, dar acesta este un subiect pentru un articol separat). Un alt exemplu este să scrieți un script care va verifica dacă există comentarii noi o dată pe zi și vă va informa prin e-mail. Un alt exemplu este analizarea unor fluxuri RSS o dată pe zi pentru a umple site-ul cu conținut. Și așa mai departe.

Aici este nevoie de cron pentru a rula astfel de comenzi: configurarea execuției scripturilor php nu durează mai mult de cinci până la zece minute, iar apoi beneficiul va fi zilnic!

exemple

Rulați prin interfața web

În zilele noastre, aproape toate gazdele care se respectă oferă o interfață web pentru setarea setărilor cron. Desigur, este diferit pentru diferiți furnizori, dar, în general, este același sistem peste tot - trebuie să specificați calea către script (de regulă, este specificată calea completă din directorul local de pe gazdă), după cum precum și a determina frecvența.

De exemplu, puteți seta o comandă cron pentru găzduirea IHCfolosind urmatorul formular:

setări

După cum puteți vedea, puteți seta ora destul de convenabil prin intermediul formularului drop-down.

Dacă trebuie să setați o oră specială care nu este în opțiunile propuse - de exemplu, pentru a rula cron la fiecare 5 minute, atunci trebuie să scrieți o comandă detaliată ca aceasta:

*/5 * * * * /usr/bin/php/home/further_path_to_the_script_/your_script.php

Parametrii de timp sunt marcați cu asteriscuri în următoarea ordine:

  • minute (0-59)
  • ceas (0-23)
  • zile (1-31)
  • luni (1-12)
  • zilele săptămânii (0-7, în timp ce duminica poate fi setată atât cu zero, cât și cu șapte)
  • În consecință, dacă există un asterisc, înseamnă toate orele (zile, luni etc.).

    Reguli și exemple de execuție a comenzilor cron

    Toate comenzile cron trebuie să respecte următoarele reguli:

  • trebuie specificati toti parametrii, daca nu se specifica nimic - atunci este plasat un asterisc (se mentioneaza robots.txt - exista si reguli stricte, nu conteaza daca este ucoz sau wordpress)
  • frecvența este determinată de fracția: */10 = 1 dată în zece minute (sau, de exemplu, ore)
  • puteți specifica mai multe opțiuni cu virgulă: 1,3,10 — în primul, al treilea și al zecelea minute
  • Să luăm în considerare exemple specifice:

    Executați scriptul în fiecare luni la 12:30 (calea către fișier este dată de exemplu, în realitate va fi diferită pe diferite găzduiri)

    30 12 * * 1 /usr/bin/php/home/further_path_to_script_/your_script.php

    Executați scenariul în fiecare zi la 1, 6 și de la 20 la 23:00:

    0 13,18,20-23 * * * /usr/bin/php/home/further_path_to_script_/your_script.php

    După cum puteți vedea, folosirea cron php este destul de ușor de rulat - principalul lucru este să urmați regulile de mai sus!