#ci-dessous dse trouve un fichier pré fait par mes soins (Avior)
# je vais rejouter des description pour les elements
# Indique le démarrage de la redirection des requetes
# cette redirection est invisible pour l'utilisateur dans la majorité des cas
RewriteEngine on
# Condition de redirection
# si https est off ou si le protocol n'est pas en HTTPS
#RewriteCond %{HTTPS} off
# lieux de redirection
# on redirige vers https
# entre [] se sont des Flags
# R=302 indique une redirection visible en indiquant le code 302
# L finit le processus et n'aplique plus rien de se qui se trouve en dessous
#RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [R=302,L]
# condition si il n'y a pas de fichier a l'endroit ciblé
# (ou si le fichier n'est pas accésible par l'utilisateur)
RewriteCond %{REQUEST_FILENAME} !-f
# on redirige vers le fichier handler.php avec $1 qui est la page entré (ex: blog/1/2)
# le L con connait déjà, QSA va mettre toutes les requetes a la suite
# (ex : blog.delta-wings.net/flag?p=5 va devenir de notre coté -> blog.delta-wings.net/assets/php/handler.php?page=flag&p=5)
RewriteRule ^(.*)$ /assets/php/handler.php?page=$1 [QSA,L]
# indique une redirection lorque on obtient une page d'erreur 403 (interdiction d'accès (permet de "cacher" les fichiers critiques))
# on redirige vars note handler pour qu'il afficher la page 404
ErrorDocument 403 /assets/php/handler.php?page=404
# on retire l'indexage de tout nos fichier (enleve l'interface grapique de navigation dans les fichiers (voir files.delta-wings.net pour un exemple))
Options All -Indexes
# lorsque qu'une url va correspondre a un fichier finissant par .php ou .html on interdit l'acces (retourne une erreur 403 (ensuite geré par notre ligne plus haut))
Order Allow,Deny
Deny from all
= 2.4>
Require all denied
# on donne l'autorisation d'acceder au fichier handler.php (sinon le site ne sera pas foncitonnel)
Order Allow,Deny
Allow from all
= 2.4>
Require all granted
# on donne acces au fichiers webmanifest et svg
Order Allow,Deny
Allow from all
= 2.4>
Require all granted
# si le serveur apache a le module mod_deflate.c
# on va indiquer que le serveur prend en charge a compression GZIP (compression pour les photos (gif, jpeg, png))
SetOutputFilter DEFLATE
SetEnvIfNoCase Request_URI \
\.(?:gif|jpe?g|png)$ no-gzip dont-vary
# si le module mod_expires.c existe
# on donne un temps de mise en cache navigateur au fichiers si dessous
ExpiresActive on
ExpiresByType image/jpg "access 2 month"
ExpiresByType image/gif "access 2 month"
ExpiresByType image/jpeg "access 2 month"
ExpiresByType image/png "access 2 month"
ExpiresByType text/css "access 2 month"
ExpiresByType application/x-javascript "access plus 2 month"
ExpiresByType text/javascript "access plus 2 month"
ExpiresByType application/javascript "access plus 2 month"
ExpiresByType image/x-icon "access plus 12 month"
ExpiresByType image/icon "access plus 12 month"
ExpiresByType application/x-ico "access plus 12 month"
ExpiresByType application/ico "access plus 12 month"