# Configuración .htaccess para Heza Web
# Este archivo debe estar en la raíz del servidor web

# Habilitar mod_rewrite
RewriteEngine On

# Configuración de seguridad
<IfModule mod_headers.c>
    Header always set X-Content-Type-Options nosniff
    Header always set X-Frame-Options SAMEORIGIN
    Header always set X-XSS-Protection "1; mode=block"
</IfModule>

# Bloquear acceso directo al directorio backend
# Este archivo debe estar en la raíz del directorio backend

# Denegar acceso a todos los archivos y directorios por defecto
<Files "*">
    Order Deny,Allow
    Deny from all
</Files>

# Denegar acceso a directorios específicos
<DirectoryMatch "^/.*">
    Order Deny,Allow
    Deny from all
</DirectoryMatch>

# Permitir solo acceso a la API desde el frontend
<Location "/api">
    Order Allow,Deny
    Allow from all
</Location>

# PERMITIR acceso a las imágenes en uploads
<Location "/uploads">
    Order Allow,Deny
    Allow from all
    
    # Headers para imágenes
    Header always set Access-Control-Allow-Origin "*"
    Header always set Cache-Control "public, max-age=31536000"
</Location>

# Bloquear acceso a archivos sensibles
<FilesMatch "\.(env|json|js|sql|log)$">
    Order Deny,Allow
    Deny from all
</FilesMatch>

# Bloquear acceso a directorios sensibles (pero permitir uploads)
<DirectoryMatch "(node_modules|src|config)">
    Order Deny,Allow
    Deny from all
</DirectoryMatch>

# Redirigir cualquier acceso directo al backend
RewriteEngine On
RewriteCond %{REQUEST_URI} ^/backend/?$
RewriteRule ^(.*)$ / [R=301,L]

# Mostrar error 403 para cualquier acceso no autorizado
ErrorDocument 403 "Acceso denegado" 