# ------------------------------------------------------------------
# SIADAP — configuração para instalação em subpasta do cPanel
# Exemplo: https://www.dominio.pt/siadap/
# Este ficheiro deve ficar DENTRO da pasta do projeto (não no
# public_html raiz, para não afectar os outros projetos).
# ------------------------------------------------------------------

<IfModule mod_autoindex.c>
  Options -Indexes
</IfModule>

DirectoryIndex public/index.php

<IfModule mod_rewrite.c>
  RewriteEngine On

  # 1) Nunca reescrever pedidos que já apontam para public/
  RewriteRule ^public/ - [L]

  # 2) Bloquear pastas de código/dados (defesa em profundidade)
  RewriteRule ^(app|sql|storage|tools)/ - [F,L]

  # 3) Bloquear ficheiros ocultos (.env, .git, ...), excepto .well-known
  RewriteCond %{REQUEST_URI} !/\.well-known/
  RewriteRule (^|/)\. - [F,L]

  # 4) Raiz do projeto -> front controller
  RewriteRule ^$ public/index.php [L]
  RewriteRule ^(.+)$ public/$1 [L]
</IfModule>

# Bloqueio de ficheiros sensíveis mesmo sem mod_rewrite
<FilesMatch "^\.(env|git|htpasswd|gitignore)">
  <IfModule mod_authz_core.c>
    Require all denied
  </IfModule>
  <IfModule !mod_authz_core.c>
    Order allow,deny
    Deny from all
  </IfModule>
</FilesMatch>

# Cabeçalhos de segurança básicos
<IfModule mod_headers.c>
  Header always set X-Content-Type-Options "nosniff"
  Header always set X-Frame-Options "SAMEORIGIN"
  Header always set Referrer-Policy "strict-origin-when-cross-origin"
</IfModule>
