Detectarea unui fișier PHP necunoscut în folderul de încărcări WordPress este un moment terifiant. Am ajutat mii de utilizatori panicați să-și securizeze site-urile după ce au descoperit exact această vulnerabilitate.
Această problemă expune o breșă de securitate ascunsă care lasă site-ul dvs. deschis atacatorilor. Hackerii folosesc aceste directoare neprotejate pentru a încărca scripturi malițioase și a crea uși din spate ascunse.
Din fericire, puteți bloca această metodă comună de atac cu câteva ajustări rapide. Dezactivarea execuției PHP în WordPress face mai dificil pentru actorii rău intenționați să preia controlul asupra site-ului dvs.
Prin blocarea execuției PHP în directoarele WordPress unde nu este necesară, închideți o breșă majoră de securitate.
Vă vom arăta exact cum să vă protejați site-ul pas cu pas. Citiți mai departe pentru a afla cum să vă securizați directoarele WordPress și să vă păstrați munca grea în siguranță.

De ce să dezactivați execuția PHP în anumite directoare WordPress?
În mod implicit, WordPress face anumite directoare scriibile, astfel încât dvs. și alți utilizatori autorizați de pe site-ul dvs. web să puteți încărca cu ușurință teme, pluginuri, imagini și videoclipuri pe site-ul dvs. web.
Cu toate acestea, această capacitate poate fi abuzată dacă ajunge pe mâini greșite, cum ar fi hackeri care o pot folosi pentru a încărca fișiere de acces backdoor sau malware pe site-ul dvs. WordPress.
Aceste fișiere malițioase sunt adesea deghizate în fișiere de bază WordPress. Sunt scrise în principal în PHP și pot rula în fundal pentru a obține acces complet la fiecare aspect al site-ului dvs. web.
Sună înfricoșător, nu-i așa?
Nu vă faceți griji. Există o soluție ușoară pentru asta. Pur și simplu dezactivați execuția PHP în anumite directoare unde nu aveți nevoie de ea. Făcând acest lucru, niciun fișier PHP nu va rula în interiorul acelor directoare.
Să vedem cum să îmbunătățim securitatea WordPress dezactivând execuția PHP folosind fișierul .htaccess.
Dezactivarea Execuției PHP în Anumite Directoare WordPress Folosind Fișierul .htaccess
Majoritatea site-urilor WordPress au un fișier .htaccess în folderul rădăcină. Acesta este un fișier de configurare utilizat de Apache, unul dintre cele mai populare tipuri de software pentru servere web. (Dacă gazda dvs. folosește un server diferit, cum ar fi Nginx, nu vă faceți griji, acoperim acest lucru în secțiunea FAQ de mai jos.)
Notă: Dacă utilizați un furnizor de Găzduire WordPress Gestionată, este probabil ca acesta să blocheze deja execuția PHP în folderul dvs. de încărcări în mod implicit pentru a vă menține site-ul în siguranță. Dacă nu sunteți sigur, puteți oricând să contactați echipa lor de suport pentru a verifica!
Acest fișier de configurare puternic este utilizat pentru a proteja cu parolă zona de administrare, a dezactiva navigarea în directoare, a genera o structură de URL-uri prietenoasă cu SEO și multe altele.
Implicit, fișierul .htaccess se află în folderul rădăcină al site-ului dvs. WordPress, dar puteți crea și utiliza fișiere .htaccess suplimentare în interiorul directoarelor interioare WordPress.
Pentru a vă proteja site-ul de fișierele de acces prin uși din spate, trebuie să creați un fișier .htaccess și să-l încărcați în directorul /wp-content/uploads al site-ului dvs. Acesta este cel mai comun loc unde hackerii încearcă să ascundă scripturi malițioase, făcându-l cel mai important folder de securizat.
Pur și simplu creați un fișier nou pe computerul dvs. folosind un editor de text simplu precum Notepad (pe Windows) sau TextEdit (pe Mac). Dacă utilizați un Mac, asigurați-vă că mergeți la Format » Make Plain Text în meniul de sus.
Apoi, salvați fișierul gol și denumiți-l exact .htaccess (asigurați-vă că nu se salvează accidental ca .htaccess.txt).
Acum, copiați și lipiți următorul cod în fișierul dvs. .htaccess:
<Files *.php>
Require all denied
</Files>
Acest cod îi spune serverului dvs. să blocheze orice încercare de a rula direct un fișier care se termină cu .php din interiorul acestui folder. După ce ați lipit codul, salvați fișierul.
Apoi, trebuie să încărcați acest fișier în folderele /wp-includes și /wp-content/uploads de pe serverul dvs. de găzduire WordPress.
Sfat Pro: Dacă faceți o greșeală și site-ul dvs. afișează o eroare după încărcarea acestui fișier, nu intrați în panică! Pur și simplu utilizați clientul FTP pentru a șterge fișierul .htaccess pe care tocmai l-ați încărcat, iar site-ul dvs. va reveni instantaneu la normal.
Îl puteți încărca folosind un client FTP sau aplicația Manager de Fișiere din tabloul de bord cPanel al contului dvs. de găzduire.

Odată ce fișierul .htaccess cu codul de mai sus este adăugat, acesta va opri rularea oricăror scripturi PHP în aceste directoare.
Bonus: Dezactivați navigarea prin directoare în WordPress
În timp ce editați fișierul .htaccess, vă recomandăm cu tărie să faceți încă un pas pentru a vă îmbunătăți securitatea WordPress: dezactivarea navigării prin directoare.
În mod implicit, dacă serverul dvs. web nu găsește un fișier index (cum ar fi index.php sau index.html) într-un folder, va afișa automat o pagină care arată toate fișierele și folderele din acel director.
Hackerilor le place navigarea prin directoare, deoarece le permite să cerceteze cu ușurință fișierele dvs. și să caute vulnerabilități.
Pentru a opri acest lucru, puteți adăuga pur și simplu o linie de cod în fișierul principal .htaccess al site-ului dvs. (cel situat în directorul rădăcină, nu cel pe care tocmai l-ați adăugat în folderul de încărcări):
Options -Indexes
Pentru instrucțiuni mai detaliate, puteți consulta ghidul nostru dedicat despre cum să dezactivați navigarea prin directoare în WordPress.
Verificarea backdoor-urilor în WordPress folosind Sucuri
Utilizarea acestui truc .htaccess vă ajută să vă întăriți securitatea WordPress, dar nu va repara un site WordPress care a fost deja spart.
Backdoor-urile sunt deghizate inteligent și pot fi deja ascunse la vedere.
Dacă doriți să verificați posibilele backdoors pe site-ul dvs., atunci trebuie să activați Sucuri pe site-ul dvs.

Sucuri este cel mai bun plugin de securitate WordPress de pe piață. Scanează site-ul dvs. pentru posibile amenințări, coduri suspecte, malware și vulnerabilități.
De asemenea, blochează eficient majoritatea tentativelor de hacking de a ajunge pe site-ul dvs., adăugând un firewall între site-ul dvs. și traficul suspect.
Cel mai important, dacă site-ul dvs. WordPress este spart, acesta îl va curăța pentru dvs. Pentru a afla mai multe, puteți citi recenzia noastră Sucuri, deoarece folosim serviciul lor de ani de zile.
Puteți afla mai multe în ghidul nostru despre găsirea și repararea backdoor-urilor într-un site WordPress spart.
Întrebări frecvente despre dezactivarea execuției PHP
Iată câteva dintre cele mai frecvente întrebări pe care le primim despre întărirea securității WordPress prin dezactivarea execuției PHP în anumite directoare.
1. Ce este un fișier .htaccess și unde se află?
Fișierul .htaccess este un fișier de configurare a serverului utilizat de serverele web Apache. În WordPress, controlează lucruri precum structura URL-urilor site-ului dvs. și poate fi utilizat pentru a adăuga reguli de securitate. De obicei, îl puteți găsi în folderul rădăcină principal al instalării dvs. WordPress.
2. Dezactivarea execuției PHP în folderul de încărcări va afecta site-ul meu?
Nu, această măsură de securitate nu ar trebui să afecteze funcționarea normală a site-ului dvs. web. Directorul wp-content/uploads este destinat doar încărcărilor media, cum ar fi imagini și videoclipuri, nu rulării fișierelor PHP. Teme și plugin-urile dvs. își păstrează fișierele necesare în foldere separate unde execuția PHP este în continuare permisă în siguranță.
3. Este acest truc .htaccess suficient pentru a securiza complet site-ul meu?
Deși acesta este un pas de securitate eficient și important, este doar o parte dintr-un plan complet de securitate. O strategie completă ar trebui să includă, de asemenea, utilizarea unui plugin de securitate WordPress, menținerea actualizată a tuturor temelor și plugin-urilor dvs. și impunerea de parole puternice pentru toți utilizatorii.
4. Ce se întâmplă dacă gazda mea web folosește Nginx în loc de Apache?
Trucul fișierului .htaccess funcționează doar pe serverele web Apache. Dacă furnizorul dvs. de găzduire WordPress folosește Nginx, nu puteți utiliza un fișier .htaccess pentru a dezactiva execuția PHP în directoarele WordPress.
În schimb, Nginx necesită adăugarea unei reguli specifice (un „bloc de locație”) direct în fișierul de configurare nginx.conf al serverului dvs. pentru a refuza accesul PHP în folderul de încărcări.
Notă: Editarea fișierelor de configurare Nginx este o sarcină avansată. O singură eroare de sintaxă poate bloca întregul dvs. server web. Mai mult, mulți furnizori de găzduire WordPress gestionată restricționează accesul la aceste fișiere de bază.
Din acest motiv, vă recomandăm cu tărie să contactați echipa de suport a furnizorului dvs. de găzduire. Aceștia pot adăuga în siguranță regulile corecte de refuz Nginx pe serverul dvs. în doar câteva minute.
5. Ce ar trebui să fac dacă primesc o eroare după adăugarea fișierului .htaccess?
În primul rând, nu vă faceți griji! Nu ați stricat permanent site-ul dvs. web. Pur și simplu ștergeți fișierul .htaccess pe care tocmai l-ați încărcat în folderul dvs. /wp-content/uploads, iar site-ul dvs. va reveni online imediat.
Dacă ați văzut o „Eroare internă de server 500” după încărcarea fișierului, înseamnă, de obicei, că gazda dvs. web folosește o versiune mai veche a software-ului serverului Apache. Pentru a remedia acest lucru, deschideți fișierul .htaccess și înlocuiți codul pe care l-ați adăugat cu următorul fragment în schimb:
<Files *.php>
deny from all
</Files>
Salvați fișierul și încărcați-l din nou. Această versiune mai veche a codului face același lucru, dar este compatibilă cu serverele învechite.
Resurse suplimentare despre cum să îmbunătățiți securitatea WordPress
Sperăm că acest articol v-a ajutat să învățați cum să dezactivați execuția PHP în anumite directoare WordPress pentru a consolida securitatea site-ului dumneavoastră. De asemenea, ați putea dori să învățați și alte tehnici de securitate. Iată câteva dintre cele mai bune ghiduri ale noastre despre îmbunătățirea securității WordPress:
- Ghidul complet de securitate WordPress (Pas cu Pas)
- Cum să efectuezi un audit de securitate WordPress (Listă completă)
- Cum să scanezi site-ul tău WordPress pentru cod potențial malițios
- Cele mai bune scanere de securitate WordPress pentru detectarea malware-ului și a hacking-urilor
- Cum să găsiți și să eliminați injecția de linkuri spam în WordPress
- Cum să adăugați autentificare în doi pași în WordPress (Metodă gratuită)
- Cum să adăugați întrebări de securitate pe ecranul de autentificare WordPress
- Ce, De ce și Cum funcționează cheile de securitate WordPress
Dacă v-a plăcut acest articol, atunci vă rugăm să vă abonați la Canalul nostru de YouTube pentru tutoriale video despre WordPress. Ne puteți găsi, de asemenea, pe Twitter și Facebook.

tom
referitor la dezactivarea execuțiilor php în folderul wp-includes pentru a preveni executarea oricărui cod de tip backdoor etc. – dar par să existe multe, multe fișiere php în acel folder, de exemplu: admin-bar.php sau author-template.php, pentru a numi câteva care par importante pentru a putea fi executate și mă întreb dacă plasarea fișierului htaccess în acel folder nu va opri executarea acestor fișiere și posibil va perturba funcțiile de bază ale wordpress? apropo, mulțumesc pentru multe articole bune pe site-ul dvs.
Suport WPBeginner
Cu excepția cazului în care aveți un plugin specific care adaugă funcționalitate fișierelor, nu ar trebui să existe o problemă care să împiedice execuția PHP în foldere.
Admin
tom
Mulțumesc pentru răspuns. Configurația mea este simplă: astra/spectra, malcare și all in one seo, în acest caz voi plasa .htaccess și în wp-includes. Mulțumesc din nou pentru multe articole grozave
Mrteesurez
Văd asta ca pe o formă excelentă de securizare a unui site web prin dezactivarea execuției PHP în foldere. Conform acestui articol, doar două directoare sunt securizate, ce se întâmplă cu celelalte? Sunt securizate natural sau hackerii nu au nevoie de ele în timpul tentativei?
Suport WPBeginner
Alte secțiuni ale fișierelor site-ului dvs. necesită, în mod normal, acces mai strict sau au fișiere php necesare pentru funcționarea site-ului dvs.
Admin
Jiří Vaněk
Mulțumesc pentru aceste sfaturi de siguranță. Am creat un fișier htaccess și îl voi încărca prin FTP. Am un site web pe propriul meu server, deci întrebarea securității îmi revine în totalitate. Mulțumesc pentru următorul pas în a face WordPress-ul meu puțin mai sigur din nou.
Unarine Leo Netshifhefhe
Am și această alertă pe pluginul meu Updraft, unde backup-urile nu se fac. Poate fi din cauza fișierului htaccess?
„Directorul de backup nu a putut fi creat…
Folderul există, dar serverul dvs. web nu are permisiunea de a scrie în el. Va trebui să consultați furnizorul dvs. de găzduire web pentru a afla cum să setați permisiunile pentru ca un plugin WordPress să scrie în director. (wp-content/updraft)
Suport WPBeginner
Aceasta pare a fi o problemă legată de permisiunile fișierelor/folderelor, ar trebui să contactați furnizorul dvs. de găzduire și ei vă pot ajuta, puteți, de asemenea, să consultați ghidul nostru de mai jos:
https://www.wpbeginner.com/beginners-guide/how-to-fix-file-and-folder-permissions-error-in-wordpress/
Admin
Brian Prom
FYI: aveți o greșeală de scriere în fragmentul de cod pentru fragmentul .htaccess.
Utilizarea fragmentului de cod așa cum este (fără / la final) împiedică încărcarea imaginilor.
Suport WPBeginner
Thank you for pointing that out, our code should be fixed
Admin
Vitor Gonçlaves
Am găsit câteva fișiere .php în folderul uploads create de pluginuri. Pot presupune că acest lucru nu va cauza o problemă sau trebuie să analizez fiecare plugin individual?
Suport WPBeginner
Dacă contactați pluginurile dvs., acestea vă pot informa despre specificul acelor fișiere.
Admin
nirbo
Mulțumesc pentru informații
Suport WPBeginner
You’re welcome
Admin
cliff denney
mulțumesc mult
Suport WPBeginner
You’re welcome
Admin
Suman Samanta
Scriere excelentă! Aveți un talent pentru scrierea informativă. Conținutul dvs. m-a impresionat dincolo de cuvinte. Am multă admirație pentru scrisul dvs. Vă mulțumesc pentru toate contribuțiile valoroase pe acest subiect.
Suport WPBeginner
Thank you, glad you enjoy our writing
Admin
Thato
Băieți, cred că am stricat fișierul htaccess, site-ul meu nu afișează deloc imagini
Suport WPBeginner
Salut Thato,
Puteți descărca fișierul dvs. .htaccess pe computer ca backup și apoi să îl ștergeți de pe site-ul dvs. Accesați zona de administrare WordPress Setări » Permalinks și faceți clic pe butonul de salvare a modificărilor. Acest lucru ar trebui să regenereze fișierul dvs. .htaccess.
Admin
Shawn Rebelo
Nu face wp-content.
Fă wp-content/uploads.
Și asta:
permite comandă,refuză
refuză de la toți
Foarte mult pe servere.
Hardik
Afectează fișierele de încărcare pentru a încărca pe pagini web?
Am constatat că după încărcarea acestui fișier htaccess în folder, multe imagini din multe postări nu sunt afișate.
Chuck Cochems
Da, refuzarea accesului la fișierele php din directorul includes strică site-ul, deoarece includerea respectă restricțiile .htaccess.
Dar restricția asupra directorului de încărcări este foarte inteligentă și ar trebui să fie acolo .BY DEFAULT în directorul de încărcări și nu există niciun motiv bun pentru care să nu fie prezentă.
Stan
Care este metoda pentru serverele IIS?
Mulțumesc,
KOnnie
ZOMG! nu poți pur și simplu dezactiva accesul la scriere pentru folderul /wp-includes?
De ce să te lupți cu consecințele când poți preveni cauza?
Jonathan Hodgson
Nu ar împiedica WordPress să poată actualiza fișierele în actualizările de bază?
Jeff Wigal
Puteți plasa acest lucru și în fișierul dvs. virtualhost Apache, care va realiza același lucru:
Comanda permite,refuză
Refuză de la toți
anton
cum să implementez acest cod dacă avem o combinație de litere mici și mari la extensia fișierului, de exemplu on.php pe site-ul meu funcționează, dar nu funcționează dacă fișierul este numit cu.PHp, .PHP .PhP sau o combinație a acestora, scriptul backdoor este încă executat
Mulțumesc
Timothée Moulin
Puteți pune acest lucru în fișierul dvs. .htaccess
Ordin Refuză,Permite
Refuză de la Toți
Shams
Salut Syed,
Mulțumesc pentru un post atât de informativ și, de fapt, oferă o soluție excelentă pentru a salva WordPress de hackeri.
Vladimir
Salut!
Am urmat toate instrucțiunile dvs. din acest articol, dar nu funcționează...
Mulțumesc
Aurélien Debord
Un post atât de util cu sfaturi atât de bune și rapide.
Mulțumesc
Ramon
Am creat un fișier .htaccess în folderul wp-includes. Site-ul arăta ok, dar editorul meu WYSIWYG din paginile de administrare nu funcționa. A trebuit să elimin din nou fișierul .htaccess. (WP 3.9.1)
Wes
De asemenea, am găsit folderul meu wp-includes plin de fișiere php și nu pot vedea cum utilizarea acelui fișier .htaccess de acolo nu ar strica ceva. L-am folosit în directorul de încărcări.
Personal editorial
Uneori, funcționează prost (în funcție de pluginul pe care îl utilizați), dar nu tot timpul.
Admin
Roșu
scuzați-mi engleza mea proastă…
Am urmat toate instrucțiunile dumneavoastră din acest articol, dar când merg la tabloul de bord pentru a adăuga o nouă postare, secțiunea mea de postări a fost dată peste cap. … suspectez că fișierul .htaccess a fost problema.
când l-am șters, postarea a fost în regulă.
Personal editorial
În ce director ați încărcat fișierul .htaccess care a cauzat această problemă?
Admin
Chris
Am adăugat fișierul .htaccess în wp-includes și nu am avut probleme. Mulțumesc mult pentru sfaturi.
Brad
Am încercat acest lucru în directorul meu /wp-includes/, care este plin de fișiere php. Desigur, nu am mai putut accesa site-ul. Chiar ați vrut să includeți directorul includes pentru utilizare cu fișierul .htaccess?
Te refereai cumva la /wp-includes/images ?
Personal editorial
Nu. Ne refeream la folderul /wp-includes/. Avem acest lucru în folderul nostru wp-includes. Dacă din orice motiv vă strică site-ul, atunci ștergeți fișierul .htaccess din folderul dvs. wp-includes.
Admin
Brad
Ciudat, folderul meu wp-includes are peste 90 de fișiere php în el. Și strică site-ul. L-am scos imediat.
Dar l-am pus în folderul /wp-content/uploads/ și funcționează perfect acolo. Mulțumesc pentru răspuns
Alfred
Plasarea unui fișier htaccess care refuză accesul la fișierele php într-un director plin de fișiere php pare destul de ciudat. Presupun că este pentru că aceste fișiere sunt în mod normal doar incluse, nu executate direct. Dacă este așa, nu ar fi mai bine să refuzați pur și simplu accesul la întregul director?