Generador de .htaccess
Activa los bloques de reglas que necesites — redirecciones, HTTPS, páginas de error, protección con contraseña, refuerzo de seguridad, caché — y combínalos en un único archivo .htaccess ordenado. Cada campo se procesa como texto plano, así que nada de lo que escribas aquí se ejecuta nunca.
Redirecciones
Redirecciones de URL 301 / 302
Envía una ruta antigua a una nueva. Se ejecuta antes del controlador frontal general, así que el enrutado de una app PHP nunca las absorbe.
Esquema y host
Forzar HTTPS y canonicalización de www
Un sitio debería responder exactamente en un esquema y un host. Todo lo demás debería redirigir hacia ahí.
Errores
Páginas de error personalizadas
Sirve tu propia página en lugar de la de Apache por defecto cuando una petición da 404, está prohibida, o el servidor falla.
Control de acceso
Proteger un directorio con contraseña
Autenticación básica a través del propio Apache — un aviso de inicio de sesión delante de una carpeta, sin código de aplicación involucrado.
Refuerzo de seguridad
Refuerzo de seguridad
Pequeñas directivas que cierran configuraciones erróneas comunes y realmente explotadas.
Rendimiento
Compresión y caché del navegador
Dos mejoras independientes: respuestas más pequeñas por la red, y visitantes recurrentes que se saltan la petición por completo.
Ancho de banda
Protección contra hotlinking
Evita que otros sitios incrusten tus imágenes directamente y consuman tu ancho de banda, comprobando el encabezado Referer.
Apps PHP
Reescritura de controlador frontal
Dirige cada petición que no sea un archivo o carpeta real a un único archivo PHP, para que el propio enrutador de la app decida qué hacer con ella.
Archivo compuesto
.htaccess
Las reglas de reescritura se ejecutan de arriba abajo dentro de un mismo bloque de motor, en este orden:
- Forzar HTTPS
.htaccess compuesto
# .htaccess — composed with Wespner's .htaccess Generator
# Review before deploying: https://wespner.eu/tools
<IfModule mod_rewrite.c>
RewriteEngine On
# Force HTTPS
RewriteCond %{HTTPS} off
RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]
</IfModule>
# Custom error pages
ErrorDocument 404 /errors/404.html
# Block access to dotfiles (.git, .env, .htpasswd, ...)
<IfModule mod_authz_core.c>
<FilesMatch "^\.">
Require all denied
</FilesMatch>
</IfModule>
# Disable directory listing
Options -Indexes
# Disable the Apache version banner on error pages
ServerSignature Off
¿En nginx? .htaccess no hace nada.
¿Tienes tu propio servidor de juegos?
Servidores de juegos Wespner con protección DDoS, discos NVMe y activación en pocos minutos.