Options -Indexes

# ── Bloquear acceso directo a archivos que nunca deben llamarse desde el navegador ──
<Files "db.php">
    Order allow,deny
    Deny from all
</Files>

# ── Bloquear archivos sensibles ──
<FilesMatch "\.(env|sql|log|sh|lock|md|json|lock)$">
    Order allow,deny
    Deny from all
</FilesMatch>

# ── Bloquear acceso a vendor/ ──
<IfModule mod_rewrite.c>
    RewriteEngine On

    # Bloquear vendor/
    RewriteRule ^vendor/ - [F,L]

    # Permitir peticiones OPTIONS (CORS preflight) sin pasar por PHP
    RewriteCond %{REQUEST_METHOD} OPTIONS
    RewriteRule .* / [R=200,L]
</IfModule>

# ── Cabeceras de seguridad y CORS ──
<IfModule mod_headers.c>
    Header always set Access-Control-Allow-Origin "https://gocar24.eu"
    Header always set Access-Control-Allow-Methods "GET, POST, OPTIONS"
    Header always set Access-Control-Allow-Headers "Content-Type"
    Header always set X-Content-Type-Options "nosniff"
    Header always set X-Frame-Options "DENY"
    Header always set Referrer-Policy "strict-origin-when-cross-origin"
</IfModule>