iControlWP
Ebben a cikkben elmagyarázzuk:
- Mi a WP Cron?
- Hogyan működik?
- Miért nem működik?
- Milyen problémákat okoz a WP Cron hibája?
- Hogyan javítható a WP Cron
Szóval, kezdjük el…
Mi az a WP Cron?
A Cron egy UNIX parancs a valamikor a jövőben végrehajtandó feladatok ütemezésére. Általában egy periodikusan végrehajtandó feladat ütemezésére használják.
A WordPress egy wp-cron nevű fájlt használ.php virtuális cron munkaként, vagy ütemezett feladatként, hogy automatizáljon olyan dolgokat, mint
- időzített bejegyzések közzététele
- plugin vagy téma frissítések ellenőrzése
- e-mail értesítések küldése
- biztonsági mentés
- WordPress automatikus frissítések
- ….és így tovább.
Hogyan működik?
Minden oldal betöltésekor a WordPress ellenőrzi, hogy szükséges-e a WP Cron futtatása. Ha van rá igény, akkor megpróbál HTTP-n keresztül kérést intézni a wp-cron.php fájlhoz.
A fájl meghívása segít abban, hogy a WP Cron különálló folyamatként futjon a háttérben anélkül, hogy késleltetné az oldal betöltési idejét a felhasználó számára. Miután a WP Cron elindult, addig fut, amíg az összes szükséges feladat el nem készül, vagy amíg el nem éri a szerverkonfigurációban beállított végrehajtási időt.
Fontos elmagyarázni, hogy alapértelmezett konfigurációjában a WordPress nem használ valódi cron feladatot az ütemezéshez és egyéb kapcsolódó feladatokhoz. Ehelyett minden alkalommal, amikor egy oldal betöltődik a WordPress webhelyen, a WordPress lefuttatja a wp-cron.php fájlt. Ez alapvetően azt kérdezi, hogy “itt az ideje, hogy csináljunk még valamit?”.
Ha az oldal betöltésekor vannak beütemezett feladatok, akkor azok lefutnak. Itt azonban meg kell jegyezni, hogy a WP Cron nem fut folyamatosan, mint a rendszer cronja.
A WP Cron csak az oldal betöltésekor fog elindulni – vagyis amikor valaki meglátogat egy oldalt a webhelyeden. Ez azt jelenti, hogy ha például 16:00 órára van ütemezve egy feladat, de 22:00 óráig nem érkezik látogató, a feladat addig nem fog lefutni.
Megjegyzés: Néha előfordulhat, hogy olyan URL-címeket lát, amelyekben a ?doing_wp_cron= egy számsor követi.
Például:
https://example.com/what-is-wp-cron-article?doing_wp_cron=123456.874251298799871371475
Ez azért történik, mert bizonyos háttér-feldolgozások (például ütemezett bejegyzések közzététele) elvégzése érdekében a WordPress átirányít a ?doing_wp_cron függelékkel.
Erről bővebben itt olvashat.
Miért nem sikerül?
Amikor tehát valaki a WordPress webhelyed bármelyik oldalára érkezik, a wp-cron.php fájl beindulhat, és ellenőrizheti, hogy kell-e valamit küldeni
Sok WordPress tárhelyen ez rendeltetésszerűen fut. Néhány hoszt azonban letiltja ennek a funkciónak a futtatását, mert ez azt jelenti, hogy a nagy látogatószámú látogatók sokszor elsüthetik a virtuális cron feladatokat, ami a szerver erőforrásait használja. Ez egyúttal potenciális biztonsági rés is.
Egy másik ok, hogy egyes bővítmények és témák végzetes hibákat okozhatnak a cron-feldolgozás során (mivel esetleg nem megfelelően lettek tesztelve), és ez megszakítja a cron-folyamat futását.
Tipp: Bár nem perdöntő, és csak komolyabb problémák esetén szolgál igazán támpontként, a Shield biztonsági műszerfalán a “Recent Events Log” résznél van egy bejegyzés, amely megmutatja, mikor futott utoljára az egyszerű teszt cron:
Ezből megtudhatod, hogy a cronjaid általában véve működnek-e vagy sem. Ez nem jelenti azt, hogy minden cronod működik, de azt jelenti, hogy a WP Cron rendszered valószínűleg rendben van.
Megjegyzés: A WP Cron-t manuálisan is elindíthatod. Először is meg kell építened a linket, és ezt így kell megtenned:
- Vegyük az admin URL-edet, pl. example.com/wp-admin/
- A “/wp-admin/” helyett a “/wp-cron.php?setcronjob”
A link így fog kinézni:
example.com/wp-cron.php?setcronjob
Egyszerűen nyissa meg ezt a linket egy külön lapon, és a WP Cron elindul.
Milyen problémákat okoz a WP Cron hibája?
Ha a cron hibás, nem megfelelően fut:
- A WordPress automatikus frissítései nem fognak futni
- A bővítmények vagy témák frissítésének ellenőrzése nem fog sikerülni
- Az ütemezett bejegyzések nem fognak megjelenni
- Ha a WordPress nem használ valódi cron feladatot az ütemezéshez és más kapcsolódó feladatokhoz, az e-mail értesítések, automatikus megújítások, számlázási díjak, készleten belüli/külső értesítések nem fognak működni.
- A honlap biztonsági mentése sikertelen lesz a cron munkától függő mentési pluginek esetében
Szintén,
- A megjelent frissítések és a telepített frissítések között hosszú késés lehet
-
A prémium pluginek nem kapcsolják be helyesen a frissítési kódjukat
Egyes prémium pluginek nem tesztelték az egyéni frissítési kódjukat a WordPress cron munkával. Ez azt jelenti, hogy a cron futtatásakor a frissítési kódjuk nem működik, és a prémium eszközök automatikus frissítése sikertelen lesz.
Ez csak néhány a legfeltűnőbb problémák közül, amelyeket láttunk.
Megjegyezzük, hogy ha a cron nem működik, az összes automatikus feladat sikertelen lesz.
Hogyan javítsuk a WP Cron-t
A WP Cron problémás lehet, és a cron összeomlásának behatárolása trükkös munka.
A cikket itt ajánljuk figyelmedbe.
Azt is olvashatod:
- Miért nem működnek mindig a WordPress automatikus frissítések?
Leave a Reply