A következő tanfolyam indul

2017. július 20.

WordPress belépés – fehér képernyő vagy „A sütik blokkolva egy nem várt kimenet következtében” hibaüzenet fogad? – így oldd meg!

A napokban több hallgatónk weboldalán is felütötte a fejét a következő probléma: nem tudnak belépni a WordPress weboldaluk admin felületére. A wp-login.php belépéssel a „A sütik blokkolva egy nem várt kimenet következtében” hibaüzenet kapják, a wp-admin belépéssel nagy fehér képernyő fogadja őket. Bejegyzésünkben ezt a problémát hárítjuk el!

 

1
2

 

Több oka is lehet annak, hogy miért merül fel egyáltalán ez a probléma. Nézzük meg a lehetséges okokat, és ha ráismerünk az egyikre, akkor a szerint már orvosolhatjuk is a hibát.

  1. a weboldal adatbázis fájlját, azaz a wp-config.php fájlt az adatbázis adatok módosítását követően nem UTF-8 BOM nélkül kódolással mentettük el
  2. amikor a wp-config-sample.php fájlban található adatbázis adatokat módosítjuk, majd a fájlt wp-config.php néven mentjük le, a fájl elejére bekerül egy kis „kosz”, amely a „Cannot modify header information – headers already sent by” hibaüzenetet adja, ha meg akarjuk nyitni a WP weboldal admin felületét
  3. a wp-config.php fájlt a tárhelyen szerkesztettük/módosítottuk
  4. új bővítményt vagy új sablont telepítettünk a weboldalra

 

Ha tudjuk/sejtjük a lehetséges okot, akkor a következők a megoldások:

  1. A tárhelyről le kell tölteni a wp-config.php fájlt, majd megnyitni kódszerkesztőben, és UTF-8 BOM nélküli kódolással el kell menteni a fájlt, majd vissza kell tölteni a tárhelyre.
  2. a) Ha a tárhelyről letöltött és a kódszerkesztőben megnyitott wp-config.php fájlban egyértelműen látjuk a probléma forrását, azaz a fájl elején a „koszt”, vagyis a <?php kifejezés előtt látható 3 karaktert, akkor ezt ki kell törölni, a fájlt menteni, majd visszatölteni a tárhelyre.

VAGY

b) Őrizzünk meg egy másolatot a wp-config.php fájlról a számítógépünkön (a tárhelyről letöltjük a wp-config.php fájlt, így a gépünkön is megtalálható lesz, ha esetleg bármi miatt mégis szükségünk lenne rá, továbbá ebből kimásolhatjuk a pontos adatbázis adatokat az új fájlhoz). Töltsük le a legfrissebb WordPress verziót, és a kicsomagolt mappájában keressük meg az eredeti wp-config-sample.php fájlt, majd a már ismert módon (mint amikor először telepítettük a tárhelyre a WP-t) nyissuk meg kódszerkesztőben, és pontosan adjuk meg benne az adatbázis adatokat (aldomain esetén a table_prefix értéket is). Mentsük el másként a fájlt wp-config.php néven. Az új adatbázis fájlunk tulajdonképpen a régi wp-config.php fájl általunk készített másolata, csak éppen azt a hibát nem fogja már tartalmazni, ami miatt a probléma felmerült. A friss wp-config.php fájlt töltsük fel a tárhelyre, felülírva a korábbi (hibás) wp-config.php fájlt.

3. A 2) megoldás b) pontja a megoldás.

4. A wp-admin mappában lévő error_log fájl árulkodhat arról, ha egy új bővítmény vagy egy új sablon okozza a felmerült problémát.

Példa:

[07-May-2017 19:13:00 UTC] PHP Warning:  Cannot modify header information – headers already sent by (output started at /home/domainnev/public_html/wp-content/plugins/easy-javascript-post-slider/simple_slider.php:13) in /home/domainnev/public_html/wp-includes/pluggable.php on line 1174

=>Az easy-javascript-post-slider pluginnal van probléma.

Ha például manuálisan szerkesztjük a bővítmény egyik fájlját, akkor megint csak az lehet a hiba, hogy nem megfelelő kódolással (UTF-8 BOM nélkül) mentettük le az error_log fájlban is feltüntetett fájlt. Ebben az esetben ismét az 1) megoldás a megoldás, vagyis a tárhelyről le kell tölteni az adott fájlt, majd meg kell nyitni kódszerkesztőben, és UTF-8 BOM nélküli kódolással kell elmenteni a fájlt, majd vissza kell tölteni a tárhelyre.

További lehetséges megoldás: kikapcsolod az adott bővítményt/sablont, vagy felmész a tárhelyre, és átnevezed a bővítmény/sablon mappáját (ezzel is inaktívvá teszed), vagy teljesen törlöd a tárhelyről.

 

Hallgatóink weboldala esetén eddig ezek a bővítmények okoztak ilyen jellegű problémát: easy-javascript-post-slider plugin, responsive_image_gallery plugin

 

 

Egyéb lehetséges magyarázat a hiba hátterében:

Az üzemeltetés hátterében futó szoftverek folyamatosan frissülnek és változnak, ahogyan a WordPress vagy más szoftverek is. Előfordulhat, hogy van olyan dolog (hiba), amit eddig figyelmen kívül hagyott a PHP feldolgozó, vagy csak értesítést küldött róla a log-ba, de egy újabb verzióban már hibaként kezeli.
Bízunk benne, hogy minél kevesebbetekkel fordul ez elő, illetve ha mégis, akkor sikerül orvosolni a problémát! :)

Hozzászólások