Cum pot face ca Elysia Cron să ruleze la fiecare 15 minute? (Drupal, 7, Cron)

Sage a intrebat.

Rulez drupal 7 pe o gazdă partajată cu cpanel și apache. Nu vreau să folosesc cron obișnuit pentru că vreau să execut unele sarcini mai regulat decât altele, cum ar fi indexul de căutare. Așa că am adăugat Elysia Cron modul. Totuși, nu rulează la intervalele regulate pe care le intenționez eu. Sper să mă puteți îndruma cu toții. Iată cum l-am configurat:

Am adăugat un cron job în cpanel-ul meu așa:

http://mysite/sites/all/modules/elysia_cron/cron.php?cron_key=key și am setat frecvența la *****.

Apoi, în Drupal am mers la admin > configure > elysia cron și am făcut următoarele:

Setați căutarea să ruleze la fiecare 15 minute și toate celelalte fie la fiecare oră, fie la fiecare zi.

De asemenea, am setat setările de instalare astfel încât „never/use external crontab” să fie selectat pentru „run cron on visitor’s requests, every”.

Dar când salvez aceste setări… cron nu rulează la fiecare 15 minute pentru indexul de căutare, așa cum am planificat.

Aveți vreo idee despre ce ar mai trebui să schimb?

user51649

Comentarii

  • Frecvență ****** în acest context înseamnă: „ping Elysia Cron la fiecare minut”, deci, așa cum este descris, ar trebui să funcționeze. Funcționează Elysia Cron deloc? Și dacă răspunsul este da, la ce frecvență? Folosiți hash-ul real al cheii (și nu literalmente șirul de caractere key) în configurația cpanel? –  > Por Free Radical.
  • @Free Radical Mulțumesc pentru răspuns. Da, Elysia Cron se execută manual dacă îi spun eu să o facă. Nu știu la ce „interval” rulează, deoarece abia l-am activat în această seară. A rulat după ce l-am activat. Folosesc cheia de șir la propriu…nu mi-am dat seama că nu e bine. Am eliminat cheia în întregime totuși și Elysia cron tot nu rulează la fiecare 15 minute, așa cum era prevăzut. –  > Por Sage.
2 răspunsuri
Free Radical

Având în vedere explicația din întrebarea ta despre cum ai configurat lucrurile, cel puțin un motiv pentru care cronul extern nu face ping la Elysia Cron este că ai greșit cheia sau că aceasta lipsește.

Trebuie să cauți în sus cheia corectă. Navigați la Elysia ” Setări ” Setări de instalare ” Cheie Cron și copiați cheia are pe care o găsiți acolo astfel încât configurația Cpanel să arate așa:

http://example.com/sites/all/modules/elysia_cron/cron.php?cron_key=ZvMtg5HAaRzjz5NtkwoDs0F3jOWrbpIX5JVi3ACJl7Q

Notă: Utilizați cheia reală pe care o găsiți pe site-ul dvs. – nu cheia fictivă pe care o folosesc ca exemplu.

Comentarii

  • asta e ceea ce am avut inițial și nu funcționează. Eu folosesc cheia specificată în Elysia > Settings > Installation Settings > Cron key. Este super lungă ca cea pe care ai simulat-o mai sus. –  > Por Sage.
  • Vă pot garanta că nu va funcționa fără cheia potrivită. Sunt surprins să aflu că nu funcționează cu cheia corectă. –  > Por Free Radical.
  • S-ar putea să fie din cauză că testez asta pe un subdomeniu: staging.mysite.com/thepathtocron. Am încercat să o schimb în wget urltocron > /dev/null și acum cron rulează (conform cpanelului meu și emailurilor constante pe care le primesc) la fiecare minut. Dar pe Elysia în Drupal nu spune că se actualizează. E-mailurile pe care le primesc îmi dau și această eroare: Conectare la www.site.com|104.28.4.111|:80… conectat. Solicitare HTTP trimisă, așteptăm răspuns… 403 Forbidden 2015-06-12 03:46:02 ERROR 403: Forbidden. >> nu sunt sigur ce înseamnă asta. –  > Por Sage.
  • 403 înseamnă „Acces refuzat”. Se pare că nu este permisă accesarea URL-ului pentru a ping-ui Elysia cron. –  > Por Free Radical.
  • Interesant. Restul mesajului de eroare înainte de acea parte arată că încearcă să se conecteze cu www.sitename.com, se conectează și apoi trimite o cerere http, așteaptă răspuns, urmată de mesajul 301. Apoi se conectează doar la sitename.com (fără www), se întâmplă același lucru și astfel se termină din nou cu www.sitename.com. Aveți vreo idee de ce s-ar putea întâmpla acest lucru? –  > Por Sage.
kiamlaluno

Așa cum este descris și în Configurarea lucrărilor cron folosind comanda cron, , ceea ce vrea daimonul Cron este o comandă de executat. Nu puteți pune pur și simplu URL-ul cron pentru site-ul Drupal.

În cazul în care este instalat Wget, puteți utiliza /usr/bin/wget -O - -q -t 1 http://CRON_URL > /dev/null 2>&1. Dacă este instalat cURL, echivalentul acestei comenzi este /usr/bin/curl --silent --compressed http://CRON_URL > /dev/null 2>&1. Înlocuiți /usr/bin/ cu directorul care conține executabilul și CRON_URL cu URL-ul cron corect, care pentru Elysia Cron include sites/all/modules/elysia_cron/cron.php.

Rețineți, de asemenea, că Elysia Cron ca și Drupal Cron, necesită CRON_URL să includă cheia cron dată în formularul său de administrare.

Tags:,