Sari la conținut
Configurare

Fișierul wp-config.php în WordPress: rol și cum îl editezi

wp-config.php păstrează datele bazei de date, cheile de securitate și setările WordPress. Vezi unde se află, ce face și cum îl editezi în siguranță.

Publicat

wp-config.php este fișierul care îi spune lui WordPress cum să se conecteze la baza de date și cum să funcționeze. De obicei se află în folderul rădăcină al instalării, lângă wp-admin și wp-content. Poți adăuga sau schimba în siguranță setări deasupra liniei “That’s all, stop editing!” (în română: „asta e tot, oprește editarea!”), iar cele două blocuri de cod de sub ea trebuie lăsate neatinse. Fă mai întâi o copie de rezervă, pentru că o singură greșeală de scriere poate scoate întregul site din funcțiune.

Esențialul

  • Fișierul conține parola bazei de date și cheile de securitate, așa că tratează-l ca pe o parolă și nu publica niciodată conținutul lui pe un forum sau într-un chat de suport.
  • Setările personalizate merg deasupra liniei “stop editing”. Ultima linie de sub ea încarcă WordPress, iar o setare pusă după acea linie vine prea târziu.
  • WordPress-ul descărcat include wp-config-sample.php. Adevăratul wp-config.php este creat în timpul instalării.
  • Nu schimba $table_prefix pe un site activ editând doar acea linie. WordPress se va comporta ca și cum nu ar fi instalat.

Unde găsești wp-config.php

Conectează-te prin SFTP sau deschide managerul de fișiere al găzduirii, apoi mergi la folderul care conține wp-admin, wp-includes și wp-content. Documentația WordPress îl numește rădăcina directorului de fișiere WordPress.

Dacă nu este acolo, caută cu un folder mai sus. Încărcătorul WordPress verifică mai întâi folderul instalării, apoi folderul părinte, și îl ignoră pe cel părinte dacă are propriul wp-settings.php, pentru că asta înseamnă că acolo se află altă instalare WordPress.

Dacă fișierul nu există în niciunul dintre aceste locuri, WordPress îi trimite pe vizitatori la ecranul de configurare. Acel ecran creează fișierul pornind de la wp-config-sample.php. Când nu poate scrie în folder, îți arată textul de lipit manual într-un fișier nou.

Ce face fiecare secțiune implicită

wp-config-sample.php este șablonul și are aceste părți, în această ordine:

SecțiuneCe conținePoți să o schimbi?
DB_NAME, DB_USER, DB_PASSWORD, DB_HOSTDatele de conectare la baza de date. Șablonul folosește localhost ca gazdă, iar furnizorul de găzduire îți poate da valorile reale.Da, când se schimbă datele bazei. O valoare greșită provoacă eroarea la stabilirea conexiunii cu baza de date.
DB_CHARSET, DB_COLLATECum este stocat textul în baza de date. Valorile implicite sunt utf8mb4 și o valoare goală.Comentariul din șablon pentru DB_COLLATE spune să nu o schimbi dacă ai dubii.
De la AUTH_KEY până la NONCE_SALTOpt chei și valori salt de securitate folosite pentru cookie-urile de autentificare.Da. Schimbarea lor deconectează toți utilizatorii.
$table_prefixTextul de la începutul numelui fiecărui tabel din baza de date, implicit wp_.Doar la instalare, dacă nu redenumești și tabelele și nu actualizezi intrările salvate din baza de date ale căror nume folosesc prefixul.
WP_DEBUGModul de depanare, setat la false în șablon.Da. Ghidul despre locația jurnalului de depanare arată cum trimiți erorile într-un fișier.
Comentariul “custom values” (valori personalizate)Un spațiu gol pentru setările tale, care se termină la linia “stop editing”.Da, aici merg adăugirile tale.
ABSPATH și linia wp-settings.phpCalea către WordPress, apoi linia care încarcă restul.Nu. Lasă-le așa cum sunt.

Cheile noi sunt la un clic distanță: serviciul de chei secrete WordPress.org îți dă un set nou la fiecare încărcare. Înlocuiește toate cele opt linii cu noul set.

Fișierele mai vechi pot să nu aibă comentariul “custom values” și să conțină “Happy blogging” în loc de “Happy publishing”. Ambele funcționează, iar regula rămâne aceeași: adaugă setările deasupra acelei linii.

Setări schimbate frecvent

Fiecare dintre ele ocupă o linie. Toate provin din documentația wp-config.php, iar valorile implicite din fișierul WordPress default-constants.php.

// Memory for the front end, then for wp-admin
define( 'WP_MEMORY_LIMIT', '256M' );
define( 'WP_MAX_MEMORY_LIMIT', '512M' );

// Keep at most 3 revisions per post (false turns revisions off)
define( 'WP_POST_REVISIONS', 3 );

// Autosave every 180 seconds
define( 'AUTOSAVE_INTERVAL', 180 );

// Empty the trash after 7 days
define( 'EMPTY_TRASH_DAYS', 7 );

// Remove the theme and plugin file editor from wp-admin
define( 'DISALLOW_FILE_EDIT', true );

// Force HTTPS for logins and wp-admin
define( 'FORCE_SSL_ADMIN', true );

// Set the site addresses here
define( 'WP_HOME', 'https://example.com' );
define( 'WP_SITEURL', 'https://example.com' );

Copiază doar liniile de care ai nevoie. La câteva dintre ele merită să știi niște detalii:

  • Memorie: implicit, WordPress folosește 40M, sau 64M pe multisite, și 256M pentru wp-admin, dacă PHP nu permite deja mai mult. Dacă găzduirea nu permite schimbarea limitei, WordPress folosește limita pe care o are deja PHP. Ghidul despre memoria epuizată explică ce poți face în acest caz.
  • Revizii: sunt active implicit. Setează false ca să le dezactivezi sau un număr ca să le limitezi.
  • Salvare automată și coș de gunoi: valorile implicite sunt 60 de secunde și 30 de zile. Setarea EMPTY_TRASH_DAYS la 0 dezactivează coșul, iar documentația avertizează că WordPress nu mai cere confirmare când cineva apasă “Delete Permanently” (Șterge definitiv).
  • Editorul de fișiere: ghidul de securizare spune că asta nu împiedică un atacator să încarce fișiere malițioase, deși ar putea opri unele atacuri. DISALLOW_FILE_MODS merge mai departe și blochează și instalarea și actualizarea modulelor și temelor.
  • HTTPS: când setarea „Adresă WordPress” începe deja cu https, WordPress setează singur FORCE_SSL_ADMIN la true. Această linie schimbă ceva doar când adresa nu începe cu https.
  • Adresele site-ului: acestea înlocuiesc valorile salvate fără să schimbe ce este stocat în baza de date. Include și partea https://.

O setare cere mai multă planificare. define( 'DISABLE_WP_CRON', true ); oprește pornirea sarcinilor programate la vizitarea paginilor, așa că setează o sarcină cron pe server pentru wp-cron.php înainte să o activezi, altfel articolele programate și alte sarcini temporizate nu vor rula.

Cum editezi wp-config.php în siguranță

  1. Descarcă mai întâi o copie. Păstreaz-o pe calculatorul tău. O copie lăsată pe server cu un nume precum wp-config.php.bak poate fi citită în browser, pentru că serverul nu o mai tratează ca PHP.
  2. Deschide fișierul într-un editor de text simplu. Ghidul WordPress despre editarea fișierelor acceptă Notepad++, Sublime Text și Visual Studio Code și avertizează împotriva Google Docs și Microsoft Word, pentru că procesoarele de text schimbă ghilimelele și pot adăuga cod care strică fișierele.
  3. Găsește linia “stop editing” și pune liniile noi imediat deasupra ei. Dacă setarea este deja definită mai sus, schimbă acea linie.
  4. Salvează și încarcă fișierul, apoi deschide site-ul într-o fereastră privată de browser, împreună cu o pagină din wp-admin.
  5. Dacă se strică ceva, pune copia la loc. Asta anulează editarea chiar și când wp-admin nu se încarcă.

Mutarea fișierului deasupra rădăcinii web

Ghidul de securizare spune că wp-config.php poate fi păstrat cu un folder mai sus de instalarea WordPress, iar codul încărcătorului gestionează asta fără setări suplimentare. Mută fișierul, apoi verifică dacă site-ul se încarcă în continuare. Mutarea are două limite:

  • Folderul părinte nu poate conține altă instalare WordPress. Încărcătorul ignoră un folder părinte care are propriul wp-settings.php.
  • Un nivel mai sus este privat doar dacă WordPress se află în rădăcina web. Dacă WordPress este într-un subfolder precum /blog/, un nivel mai sus este de obicei tot public.

Același ghid spune că unii susțin că mutarea aduce beneficii minime de securitate și că poate introduce vulnerabilități serioase dacă este făcută neglijent. Așadar, trateaz-o ca opțională. Pe Apache, ghidul oferă și acest bloc pentru începutul fișierului .htaccess, care respinge cererile directe către fișier:

<Files "wp-config.php">
Require all denied
</Files>

Ghidul nostru de securitate .htaccess tratează această regulă alături de altele.

Permisiunile fișierului wp-config.php

Documentația WordPress dă numere puțin diferite, în funcție de situație:

  • Ghidul de securizare spune că doar tu și serverul web ar trebui să puteți citi fișierul, ceea ce, potrivit lui, înseamnă în general 400 sau 440.
  • Ghidul despre permisiunile fișierelor indică 440 sau 400 pe găzduire partajată cu suexec, ca să împiedice alți utilizatori de pe server să îl citească. Arată și 600 ca exemplu securizat.
  • Pentru fișierele WordPress obișnuite, acel ghid indică 644 sau 640.

Numărul potrivit depinde de utilizatorul de sistem sub care rulează serverul web. Serverul web trebuie să poată citi fișierul, așa că, dacă site-ul nu se mai încarcă după o schimbare, revino la valoarea anterioară și întreabă furnizorul de găzduire care se potrivește configurației lui.

Greșeli frecvente

  • Lipirea unei setări după linia wp-settings.php. Acea linie încarcă WordPress și stabilește valorile implicite. O constantă PHP nu se poate schimba în timpul rulării unui script, așa că linia ta nu are niciun efect.
  • Definirea aceleiași setări de două ori. Prima linie stabilește valoarea, iar a doua nu o poate schimba. Manualul PHP spune că redeclararea unei constante este învechită din PHP 8.5, așa că poate apărea și un mesaj. Caută numele în fișier înainte să îl adaugi.
  • Ghilimele în jurul lui true sau false. 'false' este un șir de caractere nevid, iar PHP îl tratează ca true. Scrie false fără ghilimele. Dimensiunile precum '256M' au nevoie de ele.
  • Ghilimele curbate dintr-un procesor de text sau de pe o pagină web. PHP are nevoie de ghilimele drepte, așa că cele curbate provoacă o eroare care oprește încărcarea site-ului.
  • Afișarea erorilor de depanare pe un site activ. WP_DEBUG_DISPLAY este implicit true, așa că, dacă activezi doar WP_DEBUG, erorile apar pe pagină pentru vizitatori. Ghidul despre locația jurnalului de depanare arată cum le trimiți într-un fișier.
  • Lăsarea WP_ALLOW_REPAIR activ. Documentația spune să îl activezi doar când este nevoie și să îl dezactivezi după ce problema este rezolvată.

Întrebări frecvente

Ce este wp-config.php în WordPress? Este fișierul de configurare pe care WordPress îl încarcă la pornire. Conține datele de conectare la baza de date, cheile de securitate și prefixul tabelelor și este locul în care adaugi setări precum WP_DEBUG sau WP_MEMORY_LIMIT.

Unde se află fișierul wp-config.php? De obicei în rădăcina instalării WordPress, folderul care conține și wp-admin, wp-includes și wp-content. WordPress îl acceptă și cu un folder mai sus de instalare, atâta timp cât acel folder nu are wp-settings.php.

Unde adaug cod în wp-config.php? Deasupra liniei That’s all, stop editing! Happy publishing. Fișierele mai vechi au Happy blogging. Ultima linie de sub ea încarcă WordPress, așa că o setare pusă după acea linie vine prea târziu.

Este sigur să editez wp-config.php? Da, dacă păstrezi o copie de rezervă și folosești un editor de text simplu. O singură greșeală de scriere poate opri încărcarea întregului site, inclusiv wp-admin, așa că descarcă mai întâi o copie. Dacă site-ul se strică după editare, pune copia la loc.

Ce se întâmplă dacă șterg wp-config.php? WordPress nu mai găsește datele de conectare la baza de date și pornește procesul de configurare, cu solicitarea de a crea un fișier de configurare. Conținutul rămâne în baza de date, așa că restaurarea copiei sau recrearea fișierului cu aceleași date reconectează site-ul.

Ce permisiuni ar trebui să aibă wp-config.php? Ghidul de securizare WordPress spune că doar tu și serverul web ar trebui să îl puteți citi, ceea ce înseamnă în general 400 sau 440. Ghidul despre permisiunile fișierelor arată și 600. Serverul web trebuie totuși să citească fișierul, așa că întreabă furnizorul de găzduire dacă site-ul nu se mai încarcă.

Surse


Creează setările de care ai nevoie fără să le scrii de mână, inclusiv chei de securitate noi, cu generatorul gratuit de wp-config.php.

FAQ

Întrebări

Ce este wp-config.php în WordPress?

Este fișierul de configurare pe care WordPress îl încarcă la pornire. Conține datele de conectare la baza de date, cheile de securitate și prefixul tabelelor și este locul în care adaugi setări precum WP_DEBUG sau WP_MEMORY_LIMIT.

Unde se află fișierul wp-config.php?

De obicei în rădăcina instalării WordPress, folderul care conține și wp-admin, wp-includes și wp-content. WordPress îl acceptă și cu un folder mai sus de instalare, atâta timp cât acel folder nu are wp-settings.php.

Unde adaug cod în wp-config.php?

Deasupra liniei That's all, stop editing! Happy publishing. Fișierele mai vechi au Happy blogging. Ultima linie de sub ea încarcă WordPress, așa că o setare pusă după acea linie vine prea târziu.

Este sigur să editez wp-config.php?

Da, dacă păstrezi o copie de rezervă și folosești un editor de text simplu. O singură greșeală de scriere poate opri încărcarea întregului site, inclusiv wp-admin, așa că descarcă mai întâi o copie. Dacă site-ul se strică după editare, pune copia la loc.

Ce se întâmplă dacă șterg wp-config.php?

WordPress nu mai găsește datele de conectare la baza de date și pornește procesul de configurare, cu solicitarea de a crea un fișier de configurare. Conținutul rămâne în baza de date, așa că restaurarea copiei sau recrearea fișierului cu aceleași date reconectează site-ul.

Ce permisiuni ar trebui să aibă wp-config.php?

Ghidul de securizare WordPress spune că doar tu și serverul web ar trebui să îl puteți citi, ceea ce înseamnă în general 400 sau 440. Ghidul despre permisiunile fișierelor arată și 600. Serverul web trebuie totuși să citească fișierul, așa că întreabă furnizorul de găzduire dacă site-ul nu se mai încarcă.