# Définir l'encodage par défaut à UTF-8
AddDefaultCharset UTF-8

# Bloquer l'accès aux fichiers .htaccess et autres fichiers système
#<FilesMatch "^\.">
#    Require all denied
#</FilesMatch>

# Désactiver l'exécution des scripts PHP
#<FilesMatch "\.php$">
#    Require all denied
#</FilesMatch>

# Désactiver les scripts CGI, Perl, Python, etc.
Options -ExecCGI
AddHandler cgi-script .cgi .pl .py
<FilesMatch "\.(cgi|pl|py)$">
    Require all denied
</FilesMatch>

# Bloquer tous les autres fichiers
#<FilesMatch ".*">
#    Require all denied
#</FilesMatch>

# Autoriser l'accès public uniquement aux types de fichiers autorisés (HTML, images, documents)
#<FilesMatch "\.(html|index.php|htm|jpg|jpeg|png|gif|svg|webp|pdf|zip|tar|gz|docx|xlsx)$">
#    Require all granted
#</FilesMatch>

# Empêcher la navigation dans les répertoires (désactive l'indexation)
#Options -Indexes

# Activer CORS (pour permettre l'accès via d'autres domaines)
<IfModule mod_headers.c>
    Header set Access-Control-Allow-Origin "*"
</IfModule>

# Ajouter des en-têtes de sécurité pour protéger le contenu
<IfModule mod_headers.c>
    # Désactiver l'exécution via MIME sniffing
    Header set X-Content-Type-Options "nosniff"
    # Interdire le chargement du contenu dans un iframe
    Header set X-Frame-Options "DENY"
    # Activer HTTPS strict (facultatif si HTTPS activé)
    Header always set Strict-Transport-Security "max-age=31536000; includeSubDomains"
</IfModule>
