- Accesati cPanel -> File Manager -> Settings (dreapta sus) -> bifati “Show Hidden Files (dotfiles)” -> Save
- Dupa aceea -> click dreapta pe .htaccess -> Edit (daca nu exista fisierul create unul nou (stanga sus) -> + File -> denumiti fisierul .htaccess -> Create New File) -> dupa care adaugati regulile dorite.
- Cele mai uzitate reguli:
- Blocare IP-uri pentru a nu mai putea accesa website-ul:
- order allow,deny
allow from all
deny from 192.168.0.12
- Blocare toti vizitatorii exceptand unul singur sau mai multi:
- order deny,allow
deny from all
allow from 192.168.0.11
- Pagini de erori personalizate:
- ErrorDocument 404 /404.html (trebuie sa aveti pagina 404.html creata in public_html/)
- Mod_Rewrite -> specificati sa va fie afisate paginile web:
- Redirect website permanent 301 din exemplu.ro in domeniu.ro
- RewriteEngine On
RewriteCond %{HTTP_HOST} ^exemplu.ro$ [OR]
RewriteCond %{HTTP_HOST} ^www.exemplu.ro$
RewriteRule ^/?$ “http://domeniu.ro/” [R=301,L]
- Redirect website temporar 302 din exemplu .ro in domeniu.ro:
- RewriteEngine On
RewriteCond %{HTTP_HOST} ^exemplu.ro$ [OR]
RewriteCond %{HTTP_HOST} ^www.exemplu.ro$
RewriteRule ^/?$ “http://domeniu.ro/” [R=302,L]
- Redirect website din exemplu.ro/subfolder in domeniu.ro
- RewriteEngine On
RewriteCond %{HTTP_HOST} ^exemplu.ro$ [OR]
RewriteCond %{HTTP_HOST} ^www.exemplu.ro$
RewriteRule ^subfolder$ “http://domeniu.ro/” [R=301,L]
- Redirect website din HTTP in HTTPS
- RewriteEngine On
RewriteCond %{HTTPS} !=on
RewriteRule .* https://exemplu.ro/%{REQUEST_URI} [R,L]
Sau
- RewriteCond %{SERVER_PORT} 80
RewriteCond %{HTTP_HOST} ^exemplu.ro$ [OR]
RewriteCond %{HTTP_HOST} ^www.exemplu.ro$
RewriteRule ^(.*)$ https://www.exemplu.ro/$1 [R,L]
- Redirect website din non-www in www
- Pentru orice domeniu:
- RewriteEngine On
RewriteCond %{HTTP_HOST} !^www.
RewriteRule ^(.*)$ http://www.%{HTTP_HOST}/$1 [R=301,L]
- Pentru un anumit domeniu:
- RewriteEngine On
RewriteCond %{HTTP_HOST} ^www.exemplu.ro [NC]
RewriteRule (.*) http://exemplu.ro/$1 [R=301,L]
- Schimbare director de root pentru domeniul principal din in public_html/nume_subfolder
- RewriteEngine on
RewriteCond %{HTTP_HOST} ^(www.)?domeniu.ro$
RewriteCond %{REQUEST_URI} !^/nume_subfolder/
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ /nume_subfolder/$1
RewriteCond %{HTTP_HOST} ^(www.)? domeniu.ro $
RewriteRule ^(/)?$ nume_subfolder/index.php [L]
Fisierul .htaccess trebuie sa fie localizat in directorul root ar domeniului principal.
Multumesc pentru explicatiile detaliate, au fost foarte utile.