Cache Control képességei
A Cache Control kiegészítő 8 képessége: gyorsítótár-állapot olvasása, törlési szabályok, Cloudflare-hitelesítő adatok ellenőrzése és egy webhely gyorsítótárának törlése.
A MainWP Cache Control 5.3-as kiadása nyolc képességet regisztrál a mainwp-cache-control kategóriában. Mindegyik a vezérlőpult mainwp/ névterében érhető el. Segítségükkel olvashatod a gyorsítótár állapotát, beállíthatod a globális és a webhelyenkénti törlési szabályokat, ellenőrizheted a tárolt Cloudflare-hitelesítő adatokat, és törölheted egy webhely gyorsítótárát.
Követelmények
Szekció neve “Követelmények”- WordPress 6.9 vagy újabb a MainWP vezérlőpulton
- Abilities API-támogatású vezérlőpult; az alábbi
input_jsonpéldákhoz 6.2 vagy újabb - Cache Control 5.3 vagy újabb, aktívan a vezérlőpulton
- Hitelesített WordPress-felhasználó
manage_optionsjoggal, a Cache Control és a célwebhelyek elérésével - Minden törlendő webhelyen beállított gyorsítótár-bővítmény vagy Cloudflare-integráció
Használj alkalmazásjelszót vagy az Abilities API áttekintésében leírt hitelesítést. A Team Control jogosultságok is érvényesek:
- az állapot és a törlési eredmény olvasásához a kiszolgálóadatok megtekintésének joga kell,
- a globális beállításokhoz és a hitelesítő adatok ellenőrzéséhez a vezérlőpult-beállítások kezelésének joga,
- a webhelyszabályok módosításához és a törléshez a webhelyek szerkesztésének joga.
A webhelyhez kötött hívások a webhely elérését is ellenőrzik, az állapotlista pedig kihagyja azokat a webhelyeket, amelyekhez a felhasználónak nincs hozzáférése.
Elérhető képességek
Szekció neve “Elérhető képességek”| Képesség | Metódus | Mire jó |
|---|---|---|
mainwp/get-site-cache-control-status-v1 |
GET | Egy webhely vezérlőpult-beállításai és a gyorsítótárazott Child-megfigyelések |
mainwp/list-site-cache-control-statuses-v1 |
GET | Webhelyállapotok kurzoros lapozással |
mainwp/get-global-cache-control-configuration-v1 |
GET | Globális beállítások és a hitelesítő adatok tárolási állapota |
mainwp/set-global-cache-control-policy-v1 |
POST | A globális automatikus törlés és a Cloudflare engedélyezése |
mainwp/set-site-cache-control-policy-v1 |
POST | Egy webhely automatikus törlési és Cloudflare-módja |
mainwp/validate-cloudflare-credentials-v1 |
GET | Egy webhelyhez kiválasztott, tárolt Cloudflare-hitelesítő adatok ellenőrzése |
mainwp/purge-site-cache-v1 |
POST | Gyorsítótár-törlés kérése egy webhelyen |
mainwp/get-site-cache-purge-outcome-v1 |
GET | Az utolsó tárolt, szerkezetes törlési eredmény |
A képességek és sémáik felderítése:
curl -u 'FELHASZNALONEV:ALKALMAZASJELSZO' \ 'https://a-te-vezerlopultod.hu/wp-json/wp-abilities/v1/abilities?category=mainwp-cache-control'A webhelyhez kötött hívásokhoz kötelező a site_id: pozitív egész szám (például 1) vagy annak tízes számrendszerbeli szöveges alakja (például "1"). Tartomány, URL, nulla és vezető nullás szöveg nem fogadható el. A képességek elutasítják a felesleges bemeneti mezőket.
Egy webhely gyorsítótár-állapota
Szekció neve “Egy webhely gyorsítótár-állapota”Képesség: mainwp/get-site-cache-control-status-v1, GET.
curl -G -u 'FELHASZNALONEV:ALKALMAZASJELSZO' \ --data-urlencode 'input_json={"site_id":1}' \ 'https://a-te-vezerlopultod.hu/wp-json/wp-abilities/v1/abilities/mainwp/get-site-cache-control-status-v1/run'Példaválasz:
{ "site_id": 1, "live": false, "current_configuration": { "source": "dashboard_current_configuration", "auto_purge_mode": 2, "configured_auto_purge_enabled": true, "cloudflare_mode": 0, "configured_cloudflare_enabled": false, "child_application_status": "unknown" }, "cached_child_observation": { "source": "dashboard_cached_child_observation", "cache_solution": "WP Rocket", "last_reported_purge_at": 1790150400 }}A current_configuration a vezérlőpulton tárolt beállításokat mutatja, a globális öröklést is beleértve. A két configured_*_enabled értéket a szabálymódok határozzák meg. A cached_child_observation a MainWP Child által legutóbb jelentett gyorsítótár-megoldást és törlési időbélyeget tartalmazza. A cache_solution üres szöveg, ha nem elérhető, a last_reported_purge_at pedig Unix-időbélyeg, vagy 0, ha nem elérhető.
Ez az olvasás nem keresi meg a MainWP Childot vagy a Cloudflare-et, nem indít törlést, és nem frissíti a megfigyeléseket. A live mindig false, a child_application_status mindig unknown. A beállított érték nem bizonyítja, hogy a Child-webhelyre is eljutott. A megfigyelések frissítéséhez szinkronizáld külön a webhelyet; a jelentett törlési időbélyeg önmagában nem igazolja, hogy a szolgáltató sikeres volt.
Webhelyállapotok listája
Szekció neve “Webhelyállapotok listája”Képesség: mainwp/list-site-cache-control-statuses-v1, GET.
curl -G -u 'FELHASZNALONEV:ALKALMAZASJELSZO' \ --data-urlencode 'input_json={"cursor":0,"limit":25}' \ 'https://a-te-vezerlopultod.hu/wp-json/wp-abilities/v1/abilities/mainwp/list-site-cache-control-statuses-v1/run'| Paraméter | Típus | Kötelező | Alapérték | Leírás |
|---|---|---|---|---|
cursor |
egész | nem | 0 |
A listát az ennél nagyobb azonosítójú webhelyektől folytatja |
limit |
egész | nem | 25 |
A jelölt webhelyek legnagyobb száma oldalanként, 1-től 100-ig |
A válasz az items tömböt, a next_cursor és a has_more értéket tartalmazza. Minden elem szerkezete megegyezik az egy webhelyes állapotválaszéval. A webhelyek növekvő azonosító szerint kerülnek sorra. Amíg a has_more értéke true, a visszaadott next_cursor értéket add át a következő kérés cursor paramétereként. Ne hagyd abba azért, mert egy oldalon kevesebb elem van a limit-nél, vagy üres: a jogosultsági ellenőrzés kihagyhat webhelyeket az oldalról. A lapozás végén a has_more értéke false, a next_cursor pedig null.
Globális beállítások olvasása
Szekció neve “Globális beállítások olvasása”Képesség: mainwp/get-global-cache-control-configuration-v1, GET. Bemeneti tulajdonságot nem fogad.
curl -G -u 'FELHASZNALONEV:ALKALMAZASJELSZO' \ --data-urlencode 'input_json={}' \ 'https://a-te-vezerlopultod.hu/wp-json/wp-abilities/v1/abilities/mainwp/get-global-cache-control-configuration-v1/run'Példaválasz:
{ "auto_purge_enabled": true, "cloudflare_enabled": false, "cloudflare_auth_method": "token", "credential_state": "stored_unverified"}A cloudflare_auth_method értéke token vagy email_key. A credential_state a kiválasztott módszer tárolási állapotát írja le:
| Érték | Jelentés |
|---|---|
missing |
A kiválasztott módszerhez nincs tárolt hitelesítő adat |
stored_unverified |
Van titkosított hitelesítőadat-rekord a várt formátumban; a visszafejtést és a Cloudflare általi elfogadást nem próbálták ki |
legacy_pending |
Egy régebbi globális API-kulcs vár a titkosított tárolásra történő átvitelre |
malformed |
A tárolt hitelesítőadat-rekord formátuma váratlan |
Ez az olvasás nem fejti vissza, nem viszi át és nem ellenőrzi a hitelesítő adatokat, és nem ad vissza API-kulcsot, tokent vagy e-mail-címet. Ha nincs mentett engedélyezési beállítás, mindkét engedélyezési jelző false.
Globális törlési szabály beállítása
Szekció neve “Globális törlési szabály beállítása”Képesség: mainwp/set-global-cache-control-policy-v1, POST. Mindkét logikai mező kötelező. A példa bekapcsolja az automatikus gyorsítótár-törlést, és kikapcsolja a globális Cloudflare-törlést:
curl -X POST -u 'FELHASZNALONEV:ALKALMAZASJELSZO' \ -H 'Content-Type: application/json' \ -d '{"input":{"auto_purge_enabled":true,"cloudflare_enabled":false}}' \ 'https://a-te-vezerlopultod.hu/wp-json/wp-abilities/v1/abilities/mainwp/set-global-cache-control-policy-v1/run'A válasz tartalmazza a previous és a current objektumot (mindkettőben a két jelzővel), a changed logikai értéket és a sync_status: "not_requested" mezőt. Ha a meglévő értékekkel hívod meg, a changed értéke false. A hívás csak a két globális engedélyezési beállítást módosítja: a hitelesítő adatokat, a hitelesítési módot, a tömeges kérések korlátját és a kérések közti késleltetést nem. A webhelyenkénti felülbírálások továbbra is érvényesek.
Webhelyszabály beállítása
Szekció neve “Webhelyszabály beállítása”Képesség: mainwp/set-site-cache-control-policy-v1, POST. Mindhárom mező kötelező: site_id, auto_purge_mode és cloudflare_mode. A két módmezőnek egész számnak kell lennie, és a jelentésük eltér:
| Érték | auto_purge_mode |
cloudflare_mode |
|---|---|---|
0 |
Az automatikus törlés kikapcsolva | A globális Cloudflare-beállítások használata |
1 |
Az automatikus törlés bekapcsolva | A webhely saját Cloudflare-hitelesítő adatainak használata |
2 |
A globális automatikus törlési beállítás öröklése | A Cloudflare-törlés kikapcsolva ennél a webhelynél |
A példában az 1 azonosítójú webhely mindkét globális beállítást örökli:
curl -X POST -u 'FELHASZNALONEV:ALKALMAZASJELSZO' \ -H 'Content-Type: application/json' \ -d '{"input":{"site_id":1,"auto_purge_mode":2,"cloudflare_mode":0}}' \ 'https://a-te-vezerlopultod.hu/wp-json/wp-abilities/v1/abilities/mainwp/set-site-cache-control-policy-v1/run'A válasz tartalmazza a site_id mezőt, a previous és a current objektumot (mindkettőben a két móddal), a changed logikai értéket és a sync_status: "not_requested" mezőt. A hitelesítő adatok nem változnak.
Egyik szabályképesség sem szinkronizál és nem töröl webhelyet. A beállítások módosítása után az érintett webhelyeket szinkronizáld külön. A sikeres mentés csak azt jelenti, hogy a vezérlőpult eltárolta a beállításokat, azt nem, hogy a MainWP Child is alkalmazza őket. A Cloudflare-törlés engedélyezése előtt add meg a hitelesítő adatokat a Cache Control beállításaiban.
Cloudflare-hitelesítő adatok ellenőrzése
Szekció neve “Cloudflare-hitelesítő adatok ellenőrzése”Képesség: mainwp/validate-cloudflare-credentials-v1, GET.
curl -G -u 'FELHASZNALONEV:ALKALMAZASJELSZO' \ --data-urlencode 'input_json={"site_id":1}' \ 'https://a-te-vezerlopultod.hu/wp-json/wp-abilities/v1/abilities/mainwp/validate-cloudflare-credentials-v1/run'Ez a webhely Cloudflare-módja által kiválasztott, tárolt hitelesítő adatokat ellenőrzi. Kapcsolatba léphet a Cloudflare-rel, de nem menti és nem cseréli le a hitelesítő adatokat, nem szinkronizálja a webhelyet, és nem töröl gyorsítótárat. Hitelesítő adatok értékét nem ad vissza.
| Válaszmező | Értékek vagy jelentés |
|---|---|
site_id |
A kért webhely azonosítója |
resolved_scope |
global, site vagy disabled |
auth_method |
token, email_key vagy none |
credential_status |
valid, invalid, network_error, missing, malformed vagy disabled |
provider_request_performed |
Megkísérelte-e a művelet a Cloudflare-kérést |
checked_at |
Az ellenőrzés Unix-időbélyege |
Ha a webhelynél a Cloudflare-törlés ki van kapcsolva, az ellenőrzés kimarad, és az eredmény disabled. Ha a webhely a globális hitelesítő adatokat örökli, az ellenőrzés akkor is megvizsgálhatja őket, ha a globális Cloudflare-törlés ki van kapcsolva. A valid azt jelenti, hogy a hitelesítő adatok átmentek a Cloudflare ellenőrzésén, de azt nem, hogy a webhely zónájához van hozzáférésük, vagy törölhetnek. A régi, átvitelre váró hitelesítő adatok itt malformed eredményt adhatnak: nézd át és mentsd el őket a Cache Control beállításaiban, mielőtt újra ellenőrzöd. Ez az ellenőrzés nem végez átvitelt.
Egy webhely gyorsítótárának törlése
Szekció neve “Egy webhely gyorsítótárának törlése”Képesség: mainwp/purge-site-cache-v1, POST. A törlést a MainWP Childon már alkalmazott beállítások szerint kéri, és nem szinkronizálja előtte az újonnan mentett vezérlőpult-beállításokat.
A hívás azonnal valódi gyorsítótár-törlést indít. Csak a site_id mezőt fogadja, nincs dry_run és confirm paramétere. Bár romboló jelölésű, POST-ot használ, mert nincs idempotensként megjelölve.
curl -X POST -u 'FELHASZNALONEV:ALKALMAZASJELSZO' \ -H 'Content-Type: application/json' \ -d '{"input":{"site_id":1}}' \ 'https://a-te-vezerlopultod.hu/wp-json/wp-abilities/v1/abilities/mainwp/purge-site-cache-v1/run'Példaválasz:
{ "site_id": 1, "overall": "dispatched_unverified", "plugin_cache": { "attempted": true, "result_basis": "dispatched_unverified" }, "cloudflare": { "attempted": true, "result_basis": "provider_confirmed" }, "last_purged_at": 1790150400}Az overall mezőt akkor is nézd meg, ha a HTTP-kérés sikeres volt:
overall |
Jelentés |
|---|---|
confirmed |
Legalább egy gyorsítótár-réteget megkíséreltek, és nincs jelentett hiba vagy meg nem erősített kiküldés |
dispatched_unverified |
Hibát nem jelentettek, de legalább egy réteget szolgáltatói megerősítés nélkül küldtek ki |
failed |
Legalább egy réteg hibát jelentett, akkor is, ha egy másik sikerült |
not_attempted |
Egyik réteget sem kísérelték meg |
unknown |
Nincs ismert eredmény; akkor is ez az érték, ha a gyorsítótárazott eredmény nem érhető el |
A plugin_cache és a cloudflare objektumban is van attempted és result_basis mező:
result_basis |
Jelentés |
|---|---|
provider_confirmed |
A szolgáltató felismert választ adott; a sikerhez vagy hibához az overall értékét és a naplókat használd |
dispatched_unverified |
A törlést kiküldték, de nincs megerősítés arról, hogy a szolgáltató befejezte |
provider_missing |
A gyorsítótár-szolgáltató vagy a szükséges törlési függvény nem volt elérhető |
not_attempted |
Ennél a rétegnél nem kíséreltek meg törlést |
preflight_failed |
Egy előfeltétel megbukott a törlési kérés előtt, például hiányzó hitelesítő adat vagy sikertelen zónakeresés |
attempt_failed |
A törlést megkíséreltek, de sikertelen volt, vagy használhatatlan választ adott |
A MainWP Child 6.3-mal a Pressable Cache Management csak akkor jelent szolgáltatói megerősítést, ha az összes szükséges réteg sikerült: az objektum-gyorsítótár, a Batcache (ha elérhető) és az Edge cache (ha be van kapcsolva). A sikertelen réteg sikeres időbélyeg helyett sikertelen eredményt ad. A last_purged_at a Child válaszában szereplő legutóbbi bővítmény- vagy Cloudflare-törlési időbélyeg, vagy 0, ha nem elérhető. Lehet korábbi időbélyeg is, és nem írja felül az overall értékét. Tartsd naprakészen a MainWP Childot: a képesség szerkezetes törlési eredményt vár, a result_basis mezővel együtt. Ha a Child ezek nélkül válaszol, mainwp_cache_control_purge_result_invalid hiba a válasz; ilyenkor a gyorsítótár még törlődhetett, ezért az újrapróbálás előtt nézd meg a webhely naplóit.
Az utolsó törlési eredmény
Szekció neve “Az utolsó törlési eredmény”Képesség: mainwp/get-site-cache-purge-outcome-v1, GET.
curl -G -u 'FELHASZNALONEV:ALKALMAZASJELSZO' \ --data-urlencode 'input_json={"site_id":1}' \ 'https://a-te-vezerlopultod.hu/wp-json/wp-abilities/v1/abilities/mainwp/get-site-cache-purge-outcome-v1/run'A válasz mezői: site_id, available, observed_at, overall, plugin_cache és cloudflare. Az eredmény- és rétegmezők a fent leírt értékeket használják. Az observed_at a tárolt eredmény megfigyelési ideje, nem a szolgáltató törlési időbélyege. Az olvasás a vezérlőpulton tárolt szerkezetes eredményt adja vissza, anélkül hogy a Child-webhelyet megkeresné. Ha nincs érvényes szerkezetes eredmény, a válasz available: false, observed_at: 0, overall: "unknown", és mindkét réteg meg nem kísérelt. Ez nem jelenti azt, hogy a webhelyet még sosem törölték: régebbi naplók vagy utolsó törlési időbélyeg létezhetnek szerkezetes eredmény nélkül is.
Hibakezelés
Szekció neve “Hibakezelés”A hitelesítési, séma- és metóduselhelyezési hibák az Abilities API hibakódjait követik. A Cache Control emellett a következőket adhatja:
| Kód | HTTP | Jelentés |
|---|---|---|
mainwp_cache_control_invalid_input |
400 | Érvénytelen webhelyazonosító, mód, értéktípus vagy bemeneti mező |
mainwp_cache_control_access_denied |
403 | A Cache Control, a vezérlőpult-jogosultság vagy a webhelyhozzáférés elutasítva |
mainwp_cache_control_site_not_found |
404 | A kért webhely nem található |
mainwp_cache_control_purge_in_progress |
409 | Ennél a webhelynél már folyamatban van egy törlés |
mainwp_cache_control_site_unavailable |
409 | A webhely nem érhető el törléshez, felfüggesztett állapotban sem |
mainwp_cache_control_global_policy_write_failed |
500 | A globális szabályt nem sikerült menteni |
mainwp_cache_control_site_policy_write_failed |
500 | A webhelyszabályt nem sikerült menteni |
mainwp_cache_control_status_list_failed |
500 | A webhelyállapotokat nem sikerült beolvasni |
mainwp_cache_control_credential_read_failed |
500 | A tárolt hitelesítőadat-állapotot nem sikerült beolvasni |
mainwp_cache_control_purge_outcome_storage_failed |
500 | A törlés eredményt adott, de a szerkezetes eredményt nem sikerült eltárolni |
mainwp_cache_control_child_unavailable |
502 | A Cache Control Child-integrációja nem érhető el |
mainwp_cache_control_purge_transport_unknown |
502 | A törlés eredményét nem sikerült megerősíteni |
mainwp_cache_control_purge_result_invalid |
502 | A Child érvénytelen vagy nem támogatott törlési eredményt adott |
A szabályírási hibák data.rollback_failed mezőt is tartalmaznak. Ha az értéke true, olvasd be az aktuális beállításokat, és a szinkronizálás előtt oldd meg a mentési hibát. Törlési átviteli, eredmény- vagy tárolási hiba után az újrapróbálás előtt vizsgáld meg a webhelyet és a naplókat, mert a törlés már megtörténhetett.
Készült: