C'est ce que j'avais d'abord pensé, mais je ne vois pas quoi :
# @version 1.0 créé le 19-07-2011
# @Copyright : © 2012 Le Corrigeur™, l'expert de la correction de l'orthographe.
# @Right : Tous les contenus du site corrigeur.fr sont placés sous la législation du copyright européen.
# @Conformity : Ce site s'appuie sur le HTML 5 et le CSS 3.
SetEnv PHP_VER 5_3
SetEnv REGISTER_GLOBALS 0
AddDefaultCharset UTF-8
# Éviter les appels système supplémentaires pour vérifier la présence de liens symboliques
# La ligne suivante doit être mise en commentaires si elle génère des erreurs
Options +FollowSymLinks
# Activation de la réécriture des URL.
RewriteEngine on
RewriteCond %{HTTP_HOST} www.monsite.fr
RewriteRule (.*) http://monsite.fr/$1 [L,R=301]
########## Begin - Règles de réécriture pour bloquer certains exploits communs
# Blocage de n'importe quel scénario essayant de mettre une valeur de mosConfig à travers l'URL
RewriteCond %{QUERY_STRING} mosConfig_[a-zA-Z_]{1,21}(=|\%3D) [OR]
# Blocage de n'importe quel essai de scénario frauduleux envoyé en base 64 à travers l'URL
RewriteCond %{QUERY_STRING} base64_encode.*\(.*\) [OR]
# Blocage de n'importe quel scénario essayant d'inclure une balise <script> à travers l'URL
RewriteCond %{QUERY_STRING} (\<|%3C).*script.*(\>|%3E) [NC,OR]
# Blocage de n'importe quel scénario essayant de fixer une variable PHP globales à travers l'URL
RewriteCond %{QUERY_STRING} GLOBALS(=|\[|\%[0-9A-Z]{0,2}) [OR]
# Blocage de n'importe quel scénario essayant de modifier une variable _REQUEST à travers l'URL
RewriteCond %{QUERY_STRING} _REQUEST(=|\[|\%[0-9A-Z]{0,2})
# Rediriger toutes les erreurs d'interdiction 403 sur la page d'erreur dédiée
RewriteRule ^(.*)$ /gestion/403.php [F,L]
########## End - Règles de réécriture pour bloquer certains exploits communs
# Interdiction du listage des répertoires
Options -Indexes
# Redirection des erreurs
ErrorDocument 404 /gestion/404.php
ErrorDocument 403 /gestion/403.php
ErrorDocument 500 /gestion/500.php
# Ajout des types MIME vidéos
AddType video/ogg .ogv
AddType video/mp4 .mp4
AddType video/webm .webm
# BEGIN Expire headers
<IfModule mod_expires.c>
ExpiresActive On
ExpiresDefault "access plus 7200 seconds"
ExpiresByType image/jpg "access plus 604800 seconds"
ExpiresByType image/jpeg "access plus 604800 seconds"
ExpiresByType image/png "access plus 604800 seconds"
ExpiresByType image/gif "access plus 604800 seconds"
AddType image/x-icon .ico
ExpiresByType image/ico "access plus 604800 seconds"
ExpiresByType image/icon "access plus 604800 seconds"
ExpiresByType image/x-icon "access plus 604800 seconds"
ExpiresByType text/css "access plus 604800 seconds"
ExpiresByType text/javascript "access plus 604800 seconds"
ExpiresByType text/html "access plus 7200 seconds"
ExpiresByType application/xhtml+xml "access plus 7200 seconds"
ExpiresByType application/javascript "access plus 604800 seconds"
ExpiresByType application/x-javascript "access plus 604800 seconds"
ExpiresByType application/x-shockwave-flash "access plus 604800 seconds"
</IfModule>
# END Expire headers
# Compression
# Activer le filtre Apache 2.0
SetOutputFilter DEFLATE
AddOutputFilterByType DEFLATE text/html text/xml application/x-javascript text/xml application/xhtml+xml text/plain application/javascript text/css
# Certains navigateurs ont des problèmes avec gzip, d'où les exceptions
BrowserMatch ^Mozilla/4 gzip-only-text/html
BrowserMatch ^Mozilla/4\.0[678] no-gzip
BrowserMatch \bMSIE !no-gzip !gzip-only-text/html
# Les images n'ont pas besoin d'êtres compressées puisqu'elles le sont déjà (jpg, gif...)
SetEnvIfNoCase Request_URI \.(?:gif|jpe?g|png)$ no-gzip dont-vary
# Pour les proxy
Header append Vary User-Agent env=!dont-vary
# protection du fichier htaccess
<files .htaccess>
order allow,deny
deny from all
</files>
Modifié par Pyanepsion (04 Oct 2012 - 13:46)