Ghidul suprem pentru fișierul WordPress .htaccess
Publicat: 2022-08-10Chiar nu sunt ușor de înțeles: codul meu implicit arată ca chinezesc.
Mă remarc prin aspectul meu singular, deoarece numele meu nu are extensie.
Am si puteri magice. Dacă m-ați configurat corect, sunt capabil să fac următoarele:
- Îmbunătățirea securității site-ului dvs.
- Creșterea vitezei de încărcare a paginilor dvs.
- Configurarea redirecționărilor.
- Limitarea spam-ului.
- Și chiar să fac câteva glume: asta e partea mea obraznică.
Încă nu știi cine sunt? Sunt fișierul .htaccess
al site-ului dvs. WordPress. Să mă cunoaștem mai bine în acest ghid despre cum lucrez.
De-a lungul acestor rânduri, veți descoperi mai mult de treizeci de linii directoare pentru configurarea mea. Ele se materializează sub formă de bucăți de cod gata de utilizare, pe care va trebui doar să le copiați și să le lipiți acasă.
Continuați să citiți, nu veți fi dezamăgiți!
Prezentare generală
- Ce este un fișier .htaccess?
- Cum funcționează fișierele .htaccess?
- Cum se creează un fișier .htaccess
- Măsuri de precauție înainte de a personaliza un fișier .htaccess
- Cum să vă modificați corect fișierul .htaccess.
- Cum să personalizați fișierul .htaccess la rădăcina unui site web?
- Cum să personalizați fișierul .htaccess în wp-admin
- Cum să personalizezi fișierul .htaccess în wp-includes?
- Cum să personalizezi fișierul .htaccess în wp-content?
- Cum să personalizezi fișierul .htaccess în wp-content/uploads?
- Recapitulare finală a fișierului .htacess din WordPress
Scris inițial în octombrie 2015, acest articol a fost actualizat ultima dată în iulie 2022.
Ce este un fișier .htaccess?
Un fișier .htaccess
este un fișier de configurare pentru Apache, software-ul pe care majoritatea serverelor web îl folosesc pentru a rula. Conținutul acestui fișier va da directive lui Apache, astfel încât serverul să se comporte într-un anumit mod.
Atenție, unele gazde web rulează doar pe serverul NGINX. Acesta este cazul Flywheel, de exemplu. Nu au un fișier .htaccess
.
Aproape toate site-urile web care folosesc WordPress au un fișier
.htaccess
. De fapt, WordPress îl creează automat în timpul instalării, pentru a include setările de permalink-uri pentru site.
Când accesați Setări > Legături permanente pentru a alege un format URL (în mod normal „Nume postare”), fișierul .htaccess
este modificat.
Cum funcționează fișierele .htaccess?
Trebuie să știți că un site web poate avea mai multe fișiere .htaccess
.
În primul rând, există fișierul principal .htaccess
, situat la rădăcina site-ului web.
Rădăcina unui site web este locul în care fișierele WordPress ( wp-admin
, wp-includes
și wp-content
foldere plus câteva alte fișiere) se află pe serverul dvs. Le puteți accesa conectându-vă la clientul dvs. FTP, de exemplu. Numele acestui folder rădăcină poate varia în funcție de furnizorul dvs. de găzduire. De exemplu, se numește public_html
cu Bluehost (link afiliat) și www
cu OVH.
Conținutul fișierului principal
.htaccess
va influența întregul site web.
Alte fișiere .htaccess
pot fi create în subdirectoare. În cazul WordPress, unul poate fi plasat în directorul wp-admin
sau wp-content/uploads
, de exemplu.
Fișierele secundare .htaccess
vor influența directoarele în care se află, precum și subdirectoarele acestora.
Dacă ne imaginăm că un fișier .htaccess
este prezent în wp-content/uploads
, directorul de uploads
și toate subdirectoarele sale vor fi afectate de ceea ce este definit în fișierul .htaccess
.
Cum se creează un fișier .htaccess
În mod logic, site-ul tău ar trebui să aibă cel puțin un fișier .htaccess
, cel situat la rădăcina site-ului tău. Îl puteți edita folosind editorul de cod preferat (Sublime Text, Brackets, Notepad++, Coda etc.).
Există și alte soluții, cum ar fi pluginul Htaccess File Editor, pentru a-l edita direct din tabloul de bord WordPress.
Dar, dacă există probleme, va trebui să parcurgeți clientul FTP și editorul de cod, așa că ați putea la fel de bine să o faceți direct manual.
Dacă trebuie să adăugați un fișier .htaccess
la un subdirector, urmați aceste instrucțiuni.
Creați un fișier .htaccess de pe computer
- Creați un fișier text nou și denumiți-l
htaccess.txt
. - Editați-l după cum doriți.
- Trimite-l la rădăcina serverului tău.
- Redenumiți-l
.htaccess
.
Creați un fișier .htaccess de pe serverul dvs
- Faceți clic dreapta în directorul unde ar trebui să fie.
- Adăugați un fișier nou și denumiți-l
.htaccess.
- Editați-l cu editorul de cod (Notepad++, Coda, Sublime Text sau altele).
Felicitări, acum știți pentru ce este un fișier .htaccess
și cum să îl creați. Înainte de a afla ce îndrumări puteți adăuga la acesta, nu uitați să fiți precaut!
Măsuri de precauție înainte de a personaliza un fișier .htaccess
Personalizarea codului unui fișier .htaccess
este destul de simplă (în special cu fragmentele de cod oferite în restul acestui articol), dar totuși nu ar trebui să intri în el cu armele aprinse.
Înainte de a face orice modificare, vă recomand să faceți mai întâi o copie de rezervă a site-ului dvs. WordPress. Pentru aceasta, puteți utiliza un plugin dedicat precum UpdraftPlus.
Apoi, salvați conținutul inițial al fișierului dvs. .htaccess
. Pentru a face acest lucru, puteți:
- Duplicați fișierul
.htaccess
de pe serverul dvs. într-un fișier.htaccess-initial
. - Copiați conținutul fișierului într-un fișier text, pe computer.
Dacă aveți o problemă, puteți restabili cu ușurință conținutul original.
Cum să vă modificați corect fișierul .htaccess.
Pentru a face orice modificări, urmați procedura de mai jos:
- Deschideți fișierul în editorul de cod.
- Puneți completările dvs. în fișier.
- Salvați-l.
- Actualizați-vă site-ul web pentru a vedea dacă totul este în regulă.
Reîmprospătarea site-ului dvs. este foarte importantă: vă va ajuta să vedeți dacă există probleme cu codul adăugat.
În general, pe ecran va apărea o eroare 500 „Eroare internă a serverului”, dacă există o problemă:
În acest caz, anulați modificările și salvați din nou. Totul ar trebui să revină la normal.
Uneori, unele gazde nu acceptă un anumit cod în fișierul .htaccess
...
Va trebui să te descurci cu asta.
Contactați serviciul clienți al gazdei dvs. pentru a afla mai multe. Sperăm că va avea nevoie doar de o mică modificare pentru a-l face să funcționeze.
Întâmpinați o eroare WordPress, cum ar fi eroarea tipică și răspândită 500? WPMarmite oferă un ghid cuprinzător pentru rezolvarea celor mai importante.
De data asta, totul e bine. Știți cum funcționează un fișier .htaccess
, cum să îl creați și să îl editați corect.
Acum aflați cum să-l personalizați în 5 locuri diferite:
- La rădăcina site-ului
- În
wp-admin
- În
wp-includes
- În
wp-content
- În
wp-content/uploads
Să începem imediat cu rădăcina site-ului. Veți vedea, aceasta va fi cea mai consistentă piesă.
Ca în orice limbaj de calculator, fișierul .htaccess
vă permite să includeți comentarii. Pentru a face acest lucru, pur și simplu plasați simbolul #
la începutul unei linii, astfel încât linia să fie ignorată. Acest lucru este foarte util pentru a vă aminti ce linii de cod efectuează. Veți putea vedea comentarii în exemplele din acest articol.
Cum să personalizați fișierul .htaccess la rădăcina unui site web?
Dacă instalarea a mers bine, veți găsi un fișier .htaccess
la rădăcina site-ului dvs. web. Acesta va conține următorul cod:
Dacă utilizați WordPress în modul multisite, codul implicit al fișierului .htaccess
va fi diferit. Acest lucru nu vă va afecta în majoritatea cazurilor.
Acum că ați localizat acest fișier, veți putea să-i îmbunătățiți conținutul cu fragmentele de cod de mai jos pentru a realiza anumite lucruri. Acesta poate fi vorba despre securitate, dar și despre alte lucruri.
Asigurați-vă că nu includeți niciun cod între comentariile # BEGIN WordPress
și # END WordPress
deoarece este posibil ca acest cod să fie modificat în unele cazuri.
Un alt memento: salvați fișierul original .htaccess
înainte de a face orice modificări. Trebuie să te poți întoarce dacă ai probleme.
Dezactivați directoarele afișate
În mod implicit, dacă încercați să accesați directoarele unui site web, serverul le va afișa. Formatarea va arăta astfel:
Vă puteți imagina că aceasta este pâine și unt pentru hackeri. Faptul că pot vedea fișierele de pe site-ul tău web îi va ajuta să-l atace mai bine. Introduceți următorul cod în fișierul dvs. .htaccess
pentru a vă proteja site-ul:
De asemenea, este posibil să utilizați acest cod pentru a preveni listarea directoarelor:
Ascundeți informațiile serverului
La unii furnizori de găzduire, paginile afișate pot conține informații despre server. Aceste informații pot oferi detalii potențialilor atacatori.
Prin urmare, cel mai bine este să le ascundeți cu următorul cod:
Activați următoarele linkuri simbolice
Trebuie să-ți spun o farsă completă, dar este important să inserezi această linie de cod în fișierul tău principal .htaccess
:
Acest lucru va permite serverului dumneavoastră să urmeze ceea ce se numesc link-uri simbolice, adică shortcodes.
Setați-vă serverul la ora corectă
Acest lucru nu este cu adevărat important, dar dacă serverul dvs. este în străinătate, îi puteți spune să seteze fusul dvs. orar cu această linie de cod:
Setați codificarea implicită a caracterelor
Următorul cod vă permite să setați codificarea caracterelor pentru fișierele text și HTML ca UTF-8
(o codificare a caracterelor computerului). Fără aceasta, există riscul ca accentele să fie înțelese greșit.
Protejați wp-config.php
Fișierul de configurare pentru site-ul dvs. web ( wp-config.php
) conține datele de conectare pentru a vă conecta la baza de date.
Acesta este cel mai sensibil fișier de pe site-ul dvs. Poate fi ținta potențialilor hackeri. Poate fi protejat prin adăugarea acestui cod în fișierul principal .htaccess
:
Protejați fișierul .htaccess în sine
Ca și fișierul wp-config.php
, fișierul .htaccess
trebuie protejat în cea mai mare măsură. Pentru a face acest lucru, introduceți acest cod:
Limitați spamul în comentarii
Știi la fel de bine ca mine dacă ai un blog, spamul în comentarii este o adevărată durere.
Din fericire, există un truc pentru a preveni acest lucru direct în fișierul .htaccess
. Aceasta nu este o soluție rapidă, dar, în combinație cu pluginul Akismet, majoritatea spam-ului ar trebui filtrată.
Nu uitați să înlocuiți mywebsite.com
cu numele dvs. de domeniu.
Evitați detectarea unui ID de autor
Chiar dacă utilizați un utilizator complex de conectare, acesta poate fi detectat.
Desigur, presupun că nu îl afișați deja public cu tema dvs. (se poate întâmpla).
Încercați să tastați mywebsite.com/?author=x
înlocuind x cu 1 pentru administrator sau ID-ul unuia dintre autorii dvs. Dacă nu sunteți protejat, veți fi redirecționat către o pagină precum mywebsite.com/author/author_id
.
Așa găsești un ID de utilizator în două secunde. De acolo, tot ce rămâne este să încerci să-ți ghicești parola.
Pentru a vă proteja de această tehnică, utilizați următorul cod:
Dezactivați legătura rapidă a imaginilor dvs
Ce naiba este hotlinking-ul? Nu-ți face griji, o să explic totul.
Practic, odată ce adăugați imagini pe site-ul dvs. (de exemplu, într-un articol), oricine poate copia adresa URL a uneia dintre imaginile dvs. și o poate afișa pe site-ul său.
S-ar putea să credeți că acest lucru nu este atât de rău, dar dacă dintr-un motiv oarecare un site web foarte urmărit preia imaginea dvs. și o afișează pe una dintre paginile sale, se vor face solicitări către serverul dvs.
Hotlinking fură de fapt lățimea de bandă . Dacă site-ul dvs. este instalat pe un server partajat mic, gazda dvs. poate să nu-l aprecieze, deoarece resursele sunt limitate.
Pentru a evita problema, introduceți și personalizați acest cod în fișierul dvs. .htaccess
:
Pentru a permite anumitor site-uri web să vă afișeze imaginile, utilizați următorul cod:
De asemenea, puteți personaliza imaginea care va fi afișată în locul imaginii solicitate. Am adăugat ceva simplu, dar poți fi mai creativ.
Interziceți adresele IP
Dacă ați observat că unele adrese IP încearcă să se autentifice în administrarea site-ului dvs. un pic prea des (de exemplu, cu pluginul Login Lockdown), puteți scăpa de ele interzicând adresa lor IP.
Aveți, de asemenea, posibilitatea de a prelua adresele IP ale spammerilor de comentarii pentru a le interzice de pe site-ul dvs.
Această soluție nu este permanentă, deoarece atacatorul dvs. poate schimba adresa IP, dar poate funcționa împotriva persoanelor mai puțin calificate.
Blocați vizitatorii de pe anumite site-uri web
Dacă îți dai seama că un site web neconform s-a conectat la al tău și nu vrei ca vizitatorii acelui site să aibă acces la site-ul tău, folosește acest cod:
Redirecționează vizitatorii de la un site la altul
Pentru a duce sfatul anterior cu un pas mai departe, puteți redirecționa vizitatorii de pe anumite site-uri web către un alt site.
Iată codul de utilizat:
Creați redirecționări
Fișierul .htaccess
vă permite să faceți redirecționări (redirecționare URL A către URL B).
Acest lucru este la îndemână pentru a redirecționa câteva pagini, dar dacă doriți să creați o mulțime de redirecționări, vă recomand pluginul WordPress Redirection, pe care l-am introdus în acest articol.
Cum să creați redirecționări în fișierul .htaccess
:
Adresa de redirecționare fără www la una cu www
Când configurați un site web, una dintre acțiunile de realizat mai întâi este redirecționarea site-ului web fără www
la versiunea cu www
(sau invers).
Dacă faceți testul data viitoare când creați un site web, veți descoperi că cele două adrese nu au neapărat linkuri către site-ul dvs.
În unele cazuri, compania de găzduire se va ocupa de acest lucru automat, sau trebuie activată prin intermediul paginii de administrare de pe site-ul de găzduire (este cazul Gandi, de exemplu).
Dacă trebuie să faceți această redirecționare manual, utilizați următorul cod înlocuind mywebsite.com
cu site-ul dvs.:
Redirecționați adresa cu www către una fără www
Pe de altă parte, dacă nu doriți ca www
în fața numelui site-ului dvs. web (ca și în cazul WPMarmite), este posibil să redirecționați la versiunea fără www
.
Introduceți următorul cod în fișierul .htaccess
:
Atenție : Nu utilizați acest cod cu cel anterior sau site-ul dvs. web va suferi o buclă de redirecționare (deoarece versiunea fără www
va redirecționa către versiunea cu www
care va redirecționa către versiunea fără www
, etc.).
Redirecționați către HTTPS
Dacă ați configurat un certificat SSL pe site-ul dvs. web pentru a-l comuta la HTTPS, trebuie să vă asigurați că toți vizitatorii dvs. navighează în versiunea securizată a site-ului dvs.
Dacă nu, informațiile sensibile ar putea fi recuperate de hackeri (date personale sau bancare, de exemplu).
Utilizați următorul cod pentru a comuta întregul site la HTTPS:
Forțați descărcarea anumitor fișiere
Când doriți să descărcați un fișier de pe un site web, browserul dvs. încearcă uneori să îl deschidă pentru a-l afișa.
Personal, consider acest lucru convenabil pentru fișierele PDF. Pe de altă parte, este foarte neplăcut pentru alte tipuri de fișiere.
Introduceți următorul cod pentru ca vizitatorii să descarce direct fișiere cu aceste extensii (modificați-le după cum doriți):
Creați o pagină de întreținere personalizată
Într-un articol anterior, ați descoperit o selecție de pluginuri de întreținere. Cu toate acestea, există cazuri în care pagina de întreținere nu va putea fi afișată.
E enervant, nu-i așa?
Pentru a obține o pagină de întreținere, puteți utiliza următorul cod:
Pentru ca acest lucru să funcționeze, trebuie să:
- Creați un fișier
maintenance.html
cu conținut care indică faptul că site-ul web este în întreținere. - Adăugați adresa dumneavoastră IP în rândul 4 (asigurându-vă că păstrați „
\
“) pentru a vă permite să accesați site-ul web (aflați adresa dumneavoastră IP pe acest site).
Când întreținerea este finalizată, puneți „ #
” în fața fiecărei rânduri pentru a le transmite ca comentariu.
Activați stocarea în cache
Fișierul .htaccess
vă permite să stocați în cache anumite fișiere de pe site-ul dvs. în browserul vizitatorului, astfel încât acestea să se încarce mai repede.
Într-adevăr, browserul nu va trebui să descarce din nou fișierele din memoria cache.
Pentru a face acest lucru, introduceți următorul cod:
Memorarea în cache a fișierelor va fi efectivă pe durata specificată pentru fiecare tip de fișier sau până când vizitatorul își șterge memoria cache.
Pentru a vă accelera site-ul web cu memorarea în cache, vă recomand să utilizați pluginul premium WP Rocket (link afiliat). Deoarece este simplu și rapid de configurat, este perfect pentru începătorii pe WordPress. Cu ajutorul acestuia, nu va trebui să utilizați fragmentul (piesa de cod) oferită mai sus.
Activați compresia
Pe lângă tot ceea ce am văzut până acum, este posibil să comprimam unele resurse înainte ca acestea să fie transferate de pe server în browser.
Iar compresia fișierelor înseamnă o viteză mai rapidă de încărcare a paginii. Așa că vă recomand să implementați acest cod pentru a oferi site-ului dvs. un plus de viteză:
Dezactivați accesul la anumite scripturi
Pentru a funcționa, WordPress folosește scripturi situate în directorul wp-includes
. Cu toate acestea, nu există niciun motiv pentru a le accesa direct. Utilizați acest cod pentru a limita accesul:
Protecție împotriva injecțiilor de fișiere
Hackerii pot încerca să trimită fișiere către serverul dvs. pentru a prelua controlul asupra site-ului dvs. Pentru a arunca o cheie în calea lor, puteți include acest cod în fișierul dvs. .htaccess
:
Protecție împotriva altor amenințări
Pe Facebook, Richard mi-a spus că este posibil să mă protejez împotriva clickjacking-ului și a altor amenințări adăugând câteva rânduri în fișierul .htaccess
.
Pentru informarea dumneavoastră, clickjacking-ul este o tehnică care îl ajută să-l facă pe vizitator să creadă că se află pe site-ul dvs., atunci când nu sunt, folosind etichete frame
sau iframe
.
Prin urmare, următorul cod vă ajută să vă protejați de clickjacking, luptă împotriva altor amenințări precum MIME Sniffing și blochează conținutul în cazul unui atac XSS (care va injecta HTML sau JavaScript în variabilele prost protejate).
Și gata, tocmai ați trecut printr-o grămadă de optimizări pentru a le încorpora în fișierul .htaccess
aflat la rădăcina site-ului.
Să mergem mai departe: noi bucăți de cod pentru folderele wp-admin
, wp-icludes
, wp-content
și wp-content/uploads
.
Cum să personalizați fișierul .htaccess în wp-admin
wp-admin
este bârlogul site-ului dvs. Locul unde mergi pentru a scrie articole, a-ți configura meniurile, a-ți configura tema și multe altele.
Este de la sine înțeles că nicio persoană neautorizată nu ar trebui să intre în acest paradis. În caz contrar, atenție la consecințe.
Iată ce puteți face pentru a întări securitatea cu un fișier .htaccess
pe care îl plasați în folderul wp-admin
al site-ului dvs. web.
Limitați accesul la administrarea site-ului web
Doar persoanele cu IP-urile enumerate vor putea accesa folderul wp-admin
. Destul de util pentru a preveni străinii să se conecteze la site-ul dvs. (chiar dacă au parola corectă).
Adăugați oa doua autentificare
Când vă conectați la administratorul unui site web WordPress, utilizați o autentificare și o parolă. Ei bine, este posibil să adăugați un al doilea prin fișierul .htaccess
și un alt fișier.
Mai întâi, creați un fișier numit .htpasswd
în directorul wp-admin
și introduceți o pereche de nume de utilizator și parolă în el. Utilizați acest site pentru a vă ghida:
Introduceți numele de utilizator pe care doriți să îl utilizați în primul câmp și parola dvs. în al doilea, apoi faceți clic pe „Generează fișierul .htpasswd
”.
Apoi copiați linia care va apărea în fișierul .htpasswd
. Dacă trebuie să creați mai mulți utilizatori, repetați procesul și adăugați noua pereche nume de utilizator/parolă într-o nouă linie.
De exemplu, puteți obține acest tip de fișier:
Apoi, introduceți următorul cod în fișierul .htaccess
:
Partea dificilă a acestei operațiuni este obținerea corectă a căii complete către fișierul .htpasswd
. Pentru a-l găsi cu siguranță, creați un fișier info.php
și introduceți următorul cod:
Accesați site-ul dvs. yourwebsite.com/wp-admin/info.php
și veți obține calea reală a fișierului .htpasswd
care urmează să fie plasată în fișierul .htaccess
. Ștergeți fișierul info.php
odată ce obțineți calea corectă.
Dacă introduceți acest cod așa cum este, solicitările AJAX nu vor mai funcționa. Utilizați fragmentul de mai jos pentru a remedia problema :
Dacă ați înțeles tot ce am menționat, ar trebui să aveți o autentificare dublă pentru a accesa administrarea WordPress.
Să trecem la următoarea parte.
Cum să personalizezi fișierul .htaccess în wp-includes?
Blocați accesul direct la fișierele PHP
Creați un fișier .htaccess
în wp-includes
și inserați următorul cod în el pentru a preveni încărcarea directă a fișierelor PHP.
Codul de mai sus este furnizat de pluginul Sucuri.
Cum să personalizezi fișierul .htaccess în wp-content?
Blocați accesul direct la fișierele PHP
Pentru folderul wp-content
, codul este similar, doar excepțiile sunt eliminate:
Cum să personalizezi fișierul .htaccess în wp-content/uploads?
Blocați accesul direct la fișierele PHP
Cu același cod, protejați folderul în care este stocat media pentru a împiedica fișierele PHP să fie executate de cineva din exterior (un hacker urât, de exemplu).
Recapitulare finală a fișierului .htacess din WordPress
După cum ați descoperit în acest ghid, fișierul .htaccess
este un instrument foarte puternic pentru configurarea serverului site-ului dvs.
Când este manipulat cu grijă și precauție, poate îmbunătăți securitatea site-ului dvs., performanța, SEO sau chiar experiența utilizatorului.
Fișierul #htaccess al site-ului tău #WordPress este un instrument puternic. Aflați cum funcționează și configurați-l ca un bucătar cu sfaturile WPMarmite.
Încă o dată, vă recomand să păstrați întotdeauna o copie de rezervă a fișierului original .htaccess
pentru a efectua o resetare în cazul în care există probleme.
Continuați cu modificările dumneavoastră cu grijă extremă (te-am avertizat!). Pot apărea erori sau incompatibilități în funcție de gazda site-ului dvs.
Deși s-a tratat destul de mult în acest articol, este posibil să mergeți mai departe în configurarea .htaccess
, folosind diverse resurse:
- Documentația WordPress și documentația Apache (software-ul care rulează serverul dvs.).
- Blogul Perishable Press, care are chiar și o carte plătită pe această temă.
Înainte de a-mi lua rămas bun, aș dori să primesc părerile voastre în comentarii. Ți-ai personalizat fișierul .htaccess
?
Și, cel mai important, nu ezitați să distribuiți orice fragment de cod pe care sunteți obișnuit să le utilizați altor cititori.