Cum să ștergi cache-ul WordPress de pe server/FTP/la distanță

17 sept. 2016, 00:42:37
Vizualizări: 18.1K
Voturi: 2

Nu lucrez de obicei cu WordPress și am dificultăți în a găsi anumite lucruri.

Am adăugat o linie de PHP personalizat într-un fișier template din child theme și am uitat un punct și virgulă. Acum site-ul nu se încarcă și rămâne blocat la încărcare. De obicei, când mi se întâmplă asta în Drupal, simplu salvez fișierul și îl reîncarc; se pare că WordPress nu funcționează la fel..

Unde este salvat cache-ul implicit WordPress și care fișiere trebuie șterse/modificate pentru a forța WordPress să șteargă cache-ul? Nu am acces deloc la site, nu se încarcă. Singurul acces pe care îl am este prin FTP. Dacă nu pot pur și simplu să șterg cache-ul, ce opțiuni am în situația actuală?

5
Comentarii

WordPress nu are încorporat caching de pagini, așa că va trebui să identifici pluginul de caching folosit și să cercetezi de acolo. Totuși, aceasta este o problemă foarte localizată. Faptul că nu ai acces la panoul de administrare și editezi fișierele direct pe server este cu adevărat o rețetă pentru dezastru.

Dave Romsey Dave Romsey
17 sept. 2016 00:50:46

@DaveRomsey Am o copie de rezervă și se pare că nu există niciun plugin de caching în lista de pluginuri, deci implicit WordPress nu cachează nimic? Ce pot face pentru a rezolva această problemă? O greșeală de tipar în PHP într-un fișier de template poate duce la o eroare irecuperabilă? Asta sună ca un bug critic complet defect. Există vreun mecanism de siguranță dacă această greșeală a fost introdusă în editorul din backend?

Altef four Altef four
17 sept. 2016 00:57:10

Corect, nucleul WordPress nu realizează caching de pagini. Încearcă să elimini temporar tema copil folosind FTP, repară problema în template (care poate nu a fost salvată în primul rând), apoi adaugă din nou tema copil. Va trebui să accesezi zona de administrare pentru a seta din nou tema copil ca temă activă. Din moment ce nu ai acces, ai putea pur și simplu să intri în tema copil și să te asiguri că corecția ta a fost salvată, pentru că am impresia că ai editat tema prin editorul de teme din backend (inițial am crezut că ai folosit FTP și pentru asta).

Dave Romsey Dave Romsey
17 sept. 2016 01:07:37

Am eliminat tema copil și apoi am pus-o înapoi pe FTP și acum totul funcționează. Sunt super confuz. Nu, mă întrebam doar dacă, teoretic, aș face aceeași greșeală de tipar în back-end în loc să o editez prin FTP, ar exploda la fel? Și aleg să nu editez cu editorul din back-end în WordPress pentru că este foarte lent și se blochează, am nevoie de evidențierea sintaxei, iar unele fișiere pe care trebuie să le editez (fișiere PHP hardcodate prost în tema premium) nu sunt văzute de editorul din WordPress, am nevoie de acces FTP.

Altef four Altef four
17 sept. 2016 01:31:50

Da, probabil ai întâmpina aceeași problemă dacă ar exista o eroare fatală în tema editată prin FTP. Personal, dezactivez editorii de teme și plugin-uri pentru că folosirea lor este pur și simplu o invitație la probleme. Am adăugat soluția pe care am sugerat-o ca răspuns. Te rog să-l accepți dacă într-adevăr rezolvă problema (menține WPSE curat).

Dave Romsey Dave Romsey
17 sept. 2016 04:46:00
Toate răspunsurile la întrebare 1
2

WordPress nu are o funcționalitate nativă de caching pentru sursa paginilor. Într-o instalare standard, modificările aduse șabloanelor ar trebui să apară imediat.

Dacă acest lucru nu se întâmplă, există mai multe posibile motive:

  • este instalat un plugin de caching pentru pagini statice, care servește o versiune învechită (implementarea specifică a cache-ului depinde de plugin);
  • există un strat de caching între site și internet, cum ar fi un proxy invers oferit de hosting;
  • site-ul are antete HTTP configurate în așa fel încât determină browserul (sau eventual un server proxy pe rută) să cacheze excesiv de agresiv;
  • PHP are instalat opcode cache (ceea ce este normal/bun) și este configurat să cacheze prea agresiv/timp îndelungat (neobișnuit), ceea ce ar putea determina ignorarea modificărilor aduse fișierelor PHP sursă pentru o perioadă de timp.
17 sept. 2016 21:02:52
Comentarii

În plus, nu cred că paginile de eroare folosesc un cod HTTP 200 (sau cel puțin nu ar trebui să facă asta), și prin urmare nu ar fi trebuit să se facă caching pentru pagina de eroare. Pe de altă parte, PHP 5.6 (?) a introdus caching-ul codului PHP parsat și din cauza unei defecțiuni de configurare a serverului, modificarea din fișier nu a fost detectată și re-parsarea nu a avut loc.

Mark Kaplun Mark Kaplun
17 sept. 2016 21:16:03

Am adăugat opcode cache ca posibilă cauză.

Rarst Rarst
17 sept. 2016 21:24:50