ERROR: Cookies are blocked due to an unexpected exit. For help, please consult the documentation or access forums for support.
Salut, mi s-a intamplat recent sa nu pot intra in sectiunea de administrare wordpress a site-ului meu. am primit un mesaj de eroare:
EROARE: Cookie-urile sunt blocate din cauza unei ieșiri neașteptate. Pentru ajutor, te rog să consulți această documentație sau să accesezi forumurile pentru suport.
Ce este de facut pentru a elimina eroarea si bineinteles a accesa zona de admin?
Front-end-ul functioneaza, deci este clar ca mesajul este logic: se refera la cookie-uri.
Accesez linkul menionat catre documentatia WordPress: Cookies. Gasesc un alt link sub titlul
Unexpected Output / Headers Already Sent?
… si gasesc
How do I solve the Headers already sent warning problem?
Description: You get a warning message on your browser that says:
Warning: Cannot modify header information – headers already sent by (output started at
Reason and Solution:
It is usually because there are spaces, new lines, or other stuff before an opening tag, typically in wp-config.php. This could be true about some other file too, so please check the error message, as it will list the specific file name where the error occurred (see “Interpreting the Error Message” below). Replacing the faulty file with one from your most recent backup or one from a fresh WordPress download is your best bet, but if neither of those are an option, please follow the steps below.
Just because you cannot see anything does not mean that PHP sees the same.
Download the file mentioned in the error message via FTP or the file manager provided in your host’s control panel.
Open that file in a plain text editor (NOT MS Word or similar. Notepad or BBEdit are fine).
Check that the very first characters are with no blank lines or spaces after it.
Before saving, or use the Save as dialog, ensure the file encoding is not UTF-8 BOM but plain UTF-8 or any without the BOM suffix.
Si in limba romana:
Descriere: Veți primi un mesaj de avertizare în browserul dvs. care spune:
Avertisment: Nu se pot modifica informațiile din antet – anteturile trimise deja de (ieșirea a început la
Motivul și soluția:
De obicei, există spații, linii noi sau alte chestii înainte de deschiderea unei etichete , De obicei în wp-config.php. Acest lucru ar putea fi valabil și pentru un alt fișier, așa că vă rugăm să verificați mesajul de eroare, deoarece acesta va afișa numele specific al fișierului în care a apărut eroarea (vezi “Interpretarea mesajului de eroare” de mai jos). Înlocuirea fișierului defect cu una din cea mai recentă copie de rezervă sau una de descărcare nouă de WordPress este cel mai bun pariu, dar dacă nici una din aceste opțiuni nu este o opțiune, urmați pașii de mai jos.
Doar pentru că nu vedeți nimic nu înseamnă că PHP vede același lucru.
Pentru a vă asigura de sfârșitul fișierului, procedați astfel:
Descărcați fișierul menționat în mesajul de eroare prin FTP sau managerul de fișiere furnizat în panoul de control al gazdei.
Deschideți fișierul într-un editor de text simplu (NOT MS Word sau similar. Notepad sau BBEdit sunt bine).
Verificați că primele personaje sunt Fără linii sau spații goale după ea.
Înainte de a salva sau de a folosi dialogul Save as, asigurați-vă că codificarea fișierelor nu este UTF-8 BOM, ci UTF-8 sau orice altul fără sufixul BOM.
Cum si unde am gasit eroarea?
Am avut in plan doua solutii:
- sa activez logarea erorilor si sa caut in fisierul de erori php fisierul responsabil si linia de producere a erorii
- sa caut ultimele fisiere lucrate si sa identific in ele eroarea, mai ales ca se refera la tag-urile de deschidere <?php
Am preferat a doua solutie, am gasit in directorul de lucru ultimele fisiere lucrate (ordonate invers cronologic dupa data de modificare in clientul FTP)
Si iata eroarea: un spatiu si un sfarsit de rand plasate inaintea primei etichete de deschidere <?php
Eroarea care apare doar in zonele in care se porneste o sesiune (zonele accesibile prin user si parola) este explicabila prin faptul ca php deja trimite headerele catre output inainte de comanda session_start();
Headerele sunt deja trimise impreuna cu primul carcater trimis catre output.
Primul caracter este CF (Carrige return) urmat apoi de LF (line feed).
Abia apoi incepe scriptul php si deja nu mai poate modifica headerele pentru a porni sesiunea de logare.
ENTER. Cum a aparut eroarea?
Da, eroarea a aparut din netatentie, tastand ENTER inaintea tag-ului de deschidere <?php
Indata ce am eliminat caracterele respective, sesiunea s-a pornit si accesul in zona de admin a fost posibil.
Iata de ce zona de front-end nu a avut de suferit, pentru ca nu se foloseste sesiune in zona publica a site-ului
Spor!
Află detalii privind realizarea site-urilor pe WordPress
Creare site WordPress
Sau ia legatura cu noi aici