Ce poti face cu fisierele .htaccess in hosting?

O mare parte din site-urile web care sunt disponibile pe internet, precum si majoritatea serverelor de hosting, ruleaza Apache HTTP Server sau unul dintre derivatele sale. Acest tip de server web este open source si multi dintre administratorii de servere nu ar avea incredere in alt tip de software pentru serverul web.

Una dintre caracteristicile principale ale apache este posibilitatea de-a adauga directive folosind fisierele de configurare, adaugarea de hosturi virtuale sau configurarea folosind fisierele .htaccess.

Pentru a putea folosi .htaccess, directiva AllowOverrides trebuie sa fie activata in fisierul de configurare apache. (AllowOverrides All).

Ce putem seta folosind .htaccess?

1. Fisierul principal de index al site-ului. Standard, utilizatorii nu pot vedea continutul unui director daca in acesta se afla un fisier index (html, htm, php, etc). Folosind .htaccess puteti activa sau dezactiva index-ul pentru directorul respectiv:

Options +Indexes

2. Puteti proteja cu parola directoarele folosind htaccess si htpasswd pentru a preveni accesul neautorizat:

AuthUserFile /calea/catre/.htpasswd
AuthType Basic
AuthName “Numele folder-ului”
Require valid-user

3. Pagini de eroare. Puteti crea documente HTML + CSS pentru a afisa erorile de pe site.

ErrorDocument 404 /error/pagina_negasita.html

4. Rescrierea adreselor URL folosind mod_rewrite (activat implicit in apache). Permite modificarea adreselor URL (mai ales in cazul adreselor foarte lungi) in adrese URL mai scurte, mai bine interpretate de motoarele de cautare.

RewriteRule ^documente/([0-9 ]+)(.*)\.html$ documents.php?id=$1

5. Allow/Deny – Puteti permite sau refuza accesul la unele resurse in functie de adresa IP a utilizatorului. De exemplu, aveti un director privat, pe care doriti sa-l accesati doar de pe anumite ip-uri. Puteti refuza accesul tuturor ip-urilor exceptand adresa dorita.

Allow from 123.123.123.123
Deny from all

Pentru mai multe informatii despre apache, puteti consulta tutoriale apache.