Cuprins
Ce este un fișier .htaccess
Ideea inițială din spatele fișierului .htaccess, așa cum sugerează și numele său, era de a controla accesul la directoarele din folderul în care se află. În prezent, acesta este utilizat în principal pentru a suprascrie parametrii incluși în mod implicit în configurația serverului, de exemplu setările PHP, și pentru a indica utilizarea unor reguli de către scripturile paginilor web, scopul acestora fiind, de exemplu, rescrierea linkurilor într-o formă lizibilă și ușor de reținut.
Trebuie reținut faptul că fișierul .htaccess și valorile conținute în acesta se aplică atât fișierelor din directorul în care se află, cât și tuturor fișierelor aflate în directoarele ulterioare din structură. Acest lucru se întâmplă până când se găsește un alt fișier .htaccess într-un anumit director situat mai jos în structură și care revocă/modifică regulile stabilite în cel curent de mai sus.
./
├── fișierele-dvs./
├── domain.com/
│ ├── awstats/
│ ├── public_html/
│ ├── .htaccess (include folderele și directoarele din public_html)
│ ├── pictures/
│ ├── style/
│ └── files/
│ ├── .htaccess (suprascrie regulile din fișierul situat în public_html)
│ ├── directory1/
│ └── directory2/ De ce un punct la începutul numelui unui fișier?
În sistemele Linux, care stau la baza majorității serverelor care funcționează pe Internet, un punct la începutul unui fișier sau director înseamnă că acesta este un element ascuns. Prin urmare, foarte des, atunci când vă conectați prin FTP la server, fișierul .htaccess nu este vizibil. În acest caz, trebuie să vă asigurați că, în setările de afișare a listei de fișiere și directoare din aplicația client FTP (de exemplu, FileZilla – informații despre configurarea aplicației pot fi găsite AICI) aveți activată opțiunea de afișare a elementelor ascunse.
La ce folosim cel mai des fișierul .htaccess
Fișierul .htaccess, așa cum am menționat la început, este utilizat în principal pentru a modifica parametrii de configurare ai serverului și pentru a seta reguli de rescriere a linkurilor, astfel încât îl puteți folosi, de exemplu, în următoarele situații:
Pagini de eroare personalizate
În cazul în care serverul web nu poate îndeplini solicitarea utilizatorului din diverse motive, în locul paginii de destinație se generează un mesaj de eroare.
Lista erorilor raportate de sistemul nostru, împreună cu descrierile acestora, poate fi găsită la secțiunea Erori HTTP.
Cu ajutorul fișierului .htaccess, putem defini propriile noastre pagini, independente de sistem, care explică situația.
Pentru a face acest lucru, creăm un folder numit /error-pages/ în directorul public_html al site-ului nostru web.
În acesta, plasăm fișiere cu conținutul nostru propriu, care va fi afișat în cazul generării unei erori, salvându-le sub numele
de exemplu.
403.php pentru mesajul "Acces interzis".
De asemenea, creăm un fișier .htaccess în directorul care conține paginile noastre de eroare, cu următorul conținut:
Allow from all
Satisfy Any Următorul pas va fi crearea unui fișier .htaccess în directorul public_html, cu următoarea sintaxă pentru fiecare dintre erori:
ErrorDocument /error-pages/.php de exemplu.
ErrorDocument 401 /error-pages/401.php
ErrorDocument 403 /error-pages/403.php
ErrorDocument 404 /error-pages/404.php Acum, după ce serverul generează o excepție, va fi afișată pagina pregătită de noi.
Pagina de start a site-ului web
URL-ul complet este format din numele domeniului (1), numele folderelor individuale (2) și numele fișierului țintă (3), de exemplu
www.mybox.com/file/test.zip
(1) (2) (3)
Cu toate acestea, dacă ultima parte nu este definită, serverul web caută în directorul specificat pentru a găsi fișierul afișat în mod implicit într-o astfel de situație.
Pe serverele noastre, următoarele valori sunt setate automat ca astfel de nume:
index.htm index.html index.cgi index.pl index.php index.php5 index.xhtml Pentru a seta propria listă sau ordinea fișierelor ca pagini de start, adăugați următoarea directivă în fișierul .htaccess:
DirectoryIndex De exemplu.
DirectoryIndex index.html index.htm web.php index.php Vizualizați o listă de fișiere
În mod implicit, afișarea listei de fișiere este blocată. Dacă doriți să afișați o listă de fișiere cu tot conținutul directorului curent după accesarea unui director în care nu există fișierul index.html sau index.php, puteți adăuga următoarea linie în fișierul .htaccess:
Options +Indexes Modificarea adresei paginilor
Uneori este necesar să modificați adresa unei anumite părți a site-ului web.
De exemplu, o pagină de vânzări se va muta de pe domeniul www.company.mybox.com/commercial/ pe www.commercial.company.mybox.com
Într-o astfel de situație, utilizatorii de internet care folosesc adresa veche ar trebui redirecționați către cea nouă.
Pentru a face acest lucru, trebuie să creați un fișier .htaccess în folderul cu conținutul vechi, cu următorul conținut:
Redirecționează de exemplu.
Redirecționează /commercial/ http://www.commercial.company.mybox.com
Un ghid suplimentar separat pe această temă poate fi găsit AICI
Blocarea hotlinking-ului resurselor
Caracterul deschis al internetului facilitează și activitățile frauduloase, inclusiv în domeniul creării de site-uri web. De câte ori s-a întâmplat ca fotografia dvs. să fie furată și utilizată fără permisiune? În plus, fotografia nici măcar nu a fost copiată, ci a fost descărcată de pe site-ul dvs.
Pentru a preveni astfel de situații, puteți bloca cu ușurință posibilitatea de hotlinking – deoarece acesta este termenul folosit pentru utilizarea resurselor de pe alte servere fără permisiune. Creați un fișier .htaccess (sau utilizați unul existent) și includeți în el următoarea regulă:
RewriteEngine On #această linie trebuie să apară o singură dată; dacă există deja, poate fi omisă
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http://(.+.)?firma.ro [NC]
RewriteRule ^pictures/.*.(jpe?g|gif|bmp|png)$ - [NC,F] O astfel de regulă nu vă va permite să afișați pe pagină, în afară de firma.pl, fișiere imagine din directorul /images/. De asemenea, puteți adăuga site-uri “prietene” specifice cărora le-am permis să utilizeze resursele noastre. Trebuie să duplicați a treia linie și să introduceți acolo domeniul corespunzător al site-ului "prieten". În același timp, acest script vă permite afișarea imaginilor dacă cineva introduce adresa acestora direct în browser.
Dacă o imagine este accesată prin hotlink, serverul nostru web va returna o eroare 403 – Acces interzis, iar imaginea nu va fi afișată.
Protecția cu parolă a directorului
În acest fel, puteți proteja directorul împotriva accesului neautorizat, specificând o listă de utilizatori care vor avea acces folosind numele de utilizator și parola.