Sari la conținut

Rezolvă eroarea 403 Forbidden

Eroarea 403 Forbidden apare când serverul a înțeles cererea, dar refuză să o proceseze. Cauza poate fi o permisiune, o regulă de acces sau o protecție aplicată de server ori de un serviciu precum Cloudflare.

Nu dezactiva firewallul și nu schimba recursiv permisiunile întregului cont. Identifică mai întâi cine a emis răspunsul.

Spre deosebire de 401 (care cere autentificare), 403 indică un refuz de acces. Nu dovedește că fișierul sau pagina există: un server poate refuza cererea înainte să verifice resursa. Vezi și definiția statusului 403.

În browser, mesajul poate apărea sub mai multe forme:

  • 403 Forbidden
  • Access Denied
  • You don’t have permission to access this resource
  • HTTP Error 403
  • Forbidden: You don’t have permission to access this folder on this server

Indiferent de varianta vizibilă, codul este același.

  1. Permisiuni greșite la fișiere sau foldere.
  2. Fișierul .htaccess corupt sau cu reguli greșite (pe Apache / LiteSpeed).
  3. Lipsa unui fișier index (index.html, index.php) în folderul accesat.
  4. Conflict de plugin sau temă în WordPress.
  5. IP blocat la nivel de cPanel, firewall sau plugin de securitate.
  6. Reguli mod_security prea agresive.
  7. Hotlink protection activă pentru imagini sau fișiere statice.
  8. CDN, Cloudflare sau alt firewall extern care filtrează cererea înainte să ajungă la server.
  1. Deschide URL-ul într-o fereastră privată.
  2. Încearcă de pe conexiunea mobilă, nu din aceeași rețea Wi-Fi.
  3. Verifică dacă 403 apare pe tot site-ul, numai în wp-admin sau numai la o acțiune precum salvarea unui articol.
  4. Notează ora, URL-ul și identificatorul afișat pe pagina de eroare.

Dacă funcționează pe conexiunea mobilă, IP-ul rețelei inițiale poate fi blocat. Află-l cu myip.kiravo.net și include-l în tichet.

Valorile standard pentru un site web:

  • Foldere: 755
  • Fișiere: 644
  • Fișier wp-config.php: poate avea permisiuni mai restrictive, în funcție de configurația serverului

Dacă un folder are, din greșeală, 777 sau 000, serverul îl poate trata ca nesigur și returnează 403. Evită 777.

  1. Intră în cPanel sau în panoul de control pentru pachetele de găzduire web premium și deschide File Manager (cPanel / Enhance).
  2. Navighează până la folderul rădăcină al site-ului (în cPanel, adesea public_html).
  3. Verifică permisiunile folderului sau fișierului care returnează 403. În cPanel, folosește Change Permissions din meniul contextual.
  4. Dacă diferă din greșeală de valorile obișnuite, corectează doar acel element și testează din nou.

Change Permissions în File Manager cPanel, cu numele domeniilor mascate

Nu aplica chmod recursiv pe tot site-ul: unele fișiere, inclusiv cele de configurare, pot avea intenționat alte permisiuni.

Pe Apache și LiteSpeed, inclusiv cu panou Enhance sau cPanel, .htaccess controlează redirectările, rescrierea URL-urilor și regulile de acces. O singură linie greșită poate bloca întregul site.

  1. Deschide File Manager din cPanel sau Enhance. În cPanel, activează afișarea fișierelor ascunse din Settings.
  2. Caută .htaccess în rădăcina site-ului.
  3. Descarcă o copie, apoi redenumește temporar fișierul în .htaccess_backup.
  4. Reîncarcă site-ul. Dacă 403 dispare, caută regula care blochează accesul. Redenumește fișierul înapoi după test, ca să nu pierzi redirectările și celelalte reguli.

Fișier .htaccess în File Manager, cu numele domeniilor mascate

Blocul WordPress pentru legături permanente arată de obicei așa. Nu înlocui cu el întregul fișier: .htaccess poate conține și alte reguli necesare site-ului.

# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress

Dacă problema este în blocul WordPress, poți intra în Setări → Legături permanente și apăsa Salvează modificările pentru regenerarea lui. Păstrează copia inițială până verifici și celelalte funcții ale site-ului.

Când accesezi un folder fără fișier index, serverul fie afișează listingul (dacă e permis), fie returnează 403. Majoritatea configurărilor de securitate aleg a doua variantă.

Urcă un index.html sau index.php în folderul respectiv. Pentru un folder gol care nu trebuie expus public, un index.html gol este suficient:

<!DOCTYPE html>
<html lang="ro">
<head>
  <meta charset="UTF-8" />
  <title>Acces restricționat</title>
</head>
<body></body>
</html>

Nu adăuga un fișier gol în rădăcina unui site sau într-un folder WordPress fără să verifici mai întâi de ce lipsește fișierul original.

Dacă eroarea apare doar pe anumite pagini (admin, autor, o categorie) și nu pe tot site-ul:

  1. Dacă problema a apărut după instalarea sau actualizarea unui plugin, dezactivează-l mai întâi pe acesta. Dacă nu poți intra în administrare, redenumește doar folderul lui din wp-content/plugins și testează.
  2. Dacă nu știi ce plugin a declanșat eroarea, fă un backup înainte să testezi dezactivarea tuturor. Reactivează-le pe rând și verifică site-ul după fiecare.
  3. Dacă suspectezi tema, testează temporar cu o temă implicită deja instalată. Dacă eroarea dispare, investighează tema activă.
  4. Verifică pluginurile de securitate (Wordfence, iThemes Security, Solid Security). Caută în log adresa ta IP și deblochează-o.
  5. Dacă 403 apare doar la salvarea unui formular, copiază ora și URL-ul într-un tichet de suport. O regulă de securitate poate avea nevoie de o excepție precisă.

Lista de pluginuri WordPress

Adresa ta IP poate ajunge pe lista neagră după mai multe încercări eșuate de autentificare.

  1. Intră în cPanel.
  2. În Security, deschide IP Blocker.
  3. Verifică lista de adrese blocate.
  4. Dacă găsești IP-ul tău (sau intervalul din care faci parte), șterge-l din listă.

IP Blocker în cPanel

Află IP-ul public pe myip.kiravo.net, dintr-un alt browser sau de pe rețeaua mobilă.

Există situații în care IP-ul este blocat la nivel de server (sau pe pachetele de găzduire web premium, unde nu există IP Blocker în panou). Deschide un tichet de suport și cere verificarea.

Mod_security filtrează cererile care seamănă cu atacuri (SQL injection, XSS, pattern-uri de boți). Uneori blochează acțiuni normale: salvarea unui articol cu mult HTML, uploadul unei imagini, o cerere de la un plugin de e-commerce. În aceste cazuri, 403 apare doar la o acțiune anume, nu pe tot site-ul.

Identifică regula care a declanșat blocarea; nu dezactiva tot firewallul. Dacă nu ai acces SSH la loguri, deschide un tichet cu data, ora, URL-ul și ce încercai să faci.

Dacă imaginile returnează 403 numai când sunt încărcate pe alt domeniu, verifică dacă Hotlink Protection le blochează.

  1. În cPanel, deschide Security → Hotlink Protection.
  2. Verifică domeniile permise. Adaugă domeniul legitim care încarcă imaginile sau dezactivează funcția dacă nu o folosești.

Starea și formularul Hotlink Protection din cPanel, cu domeniile mascate

O pagină Cloudflare afișează de obicei un Ray ID în partea de jos. Verifică:

  • Security → WAF: regula care a blocat IP-ul
  • Security → Tools → IP Access Rules: blocaje manuale
  • Security → Events: logul cererilor blocate

Nu crea o regulă globală de ocolire a protecției doar ca să treacă testul. Modifică regula, suspend-o temporar sau adaugă o excepție precisă pentru IP-ul tău. Trimite Ray ID-ul și ora administratorului zonei dacă nu ai acces la contul Cloudflare.

CodÎnseamnăCauza tipică
401UnauthorizedLipsește autentificarea sau credențialele sunt greșite.
403ForbiddenAccesul este interzis, chiar dacă ești autentificat.
404Not FoundResursa nu există pe server.
500Internal Server ErrorEroare de cod sau de configurare pe server.
503Service UnavailableServerul este în mentenanță sau supraîncărcat.

Codul singur nu stabilește cauza. Urmează pașii pentru eroarea afișată și verifică jurnalele înainte să schimbi configurația.

  1. Reîmprospătează pagina și șterge cache-ul browserului (ghid).
  2. Încearcă dintr-un browser în mod incognito sau de pe alt dispozitiv.
  3. Verifică dacă eroarea apare pe întregul site sau doar pe o pagină.
  4. Pe Apache sau LiteSpeed: testează .htaccess păstrând o copie.
  5. Verifică permisiunile elementului afectat, fără schimbări recursive.
  6. Testează mai întâi pluginul modificat recent, dacă lucrezi cu WordPress.
  7. Verifică IP Blocker și Cloudflare WAF.
  8. Caută în error_log din folderul site-ului mesajul exact.

De ce primesc 403 doar pe pagina de admin WordPress?

Poate fi o blocare de IP, o regulă de securitate sau o permisiune. Verifică jurnalul pluginului de securitate, lista de IP-uri blocate și ora exactă a erorii.

Pot rezolva 403 fără acces la cPanel?

Da, dacă ai acces FTP sau FTP pe Enhance. Poți modifica permisiunile, redenumi .htaccess (acolo unde se aplică) și încărca un index.html.

Ce înseamnă „403 Forbidden nginx”?

Mesajul indică serverul web. Cauzele sunt asemănătoare, dar Nginx nu folosește .htaccess. Modificările de configurare Nginx se fac de obicei prin suport, nu direct din panou.

Cât durează propagarea unei modificări de permisiuni?

Este instantanee. Dacă 403 persistă, problema vine din altă parte: cache, CDN sau o regulă de firewall.

Trimite URL-ul exact, ora cu fusul orar, IP-ul public și o captură în care se vede identificatorul erorii (inclusiv Ray ID, dacă e Cloudflare). Echipa poate corela aceste date cu jurnalul firewallului fără să dezactiveze protecția site-ului.

Deschide un tichet de suport sau contactează Simplenet.