Un par de ejemplos explicados del archivo de configuración .htacces:
Código: Seleccionar todo
# Activar la reescritura de URL
RewriteEngine On
# Redirigir de http a https
RewriteCond %{HTTPS} !=on
RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
# Redirigir www a non-www
RewriteCond %{HTTP_HOST} ^www\.(.*)$ [NC]
RewriteRule ^(.*)$ http://%1/$1 [R=301,L]
Explicación:
- `RewriteEngine On`: Esta línea activa el módulo de reescritura de URL.
- `RewriteCond %{HTTPS} !=on`: Esta condición se cumple si la solicitud no es HTTPS.
- `RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]`: Esta regla redirige todas las solicitudes HTTP a HTTPS.
- `RewriteCond %{HTTP_HOST} ^www\.(.*)$ [NC]`: Esta condición se cumple si el host de la solicitud comienza con "www".
- `RewriteRule ^(.*)$ http://%1/$1 [R=301,L]`: Esta regla redirige todas las solicitudes de "www" a "non-www".
Otro ejemplo que muestra cómo bloquear el acceso a ciertos archivos:
Código: Seleccionar todo
<FilesMatch "\.(htaccess|htpasswd|ini|phps|fla|psd|log|sh)$">
Order Allow,Deny
Deny from all
</FilesMatch>
Explicación:
- `<FilesMatch "\.(htaccess|htpasswd|ini|phps|fla|psd|log|sh)$">`: Esta línea coincide con los archivos que tienen las extensiones especificadas.
- `Order Allow,Deny`: Esta línea establece el orden de las directivas "Allow" y "Deny".
- `Deny from all`: Esta línea deniega el acceso a todos los archivos que coinciden con el patrón especificado.