# ============================================================================
# .htaccess racine - Securite generale du site
# ============================================================================

# --- Desactive l'affichage du contenu des dossiers sans index ---------------
Options -Indexes

# --- Empeche l'acces direct aux fichiers sensibles --------------------------
<FilesMatch "\.(sql|log|env|md|gitignore)$">
    Require all denied
</FilesMatch>

# --- Force HTTPS (a activer une fois le certificat SSL actif sur o2switch) --
<IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteCond %{HTTPS} off
    RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
</IfModule>

# --- Headers de securite (en complement de ceux envoyes par PHP) -----------
<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>

# --- Desactive l'execution de PHP dans les dossiers d'upload (au cas ou) ----
<IfModule mod_php.c>
    php_flag engine off
</IfModule>

# --- Protection contre l'injection via methodes HTTP non utilisees ----------
<IfModule mod_rewrite.c>
    RewriteCond %{REQUEST_METHOD} ^(TRACE|TRACK|DELETE|PUT) [NC]
    RewriteRule .* - [F,L]
</IfModule>