redirection et astuces pour votre fichier htaccess apache
Quelques astuces pour votre fichiers .htaccess de votre serveur apache
Paramétrez votre fuseau horaire
SetEnv
TZEurope/Paris
Redirection 301
La redirection 301 est la meilleure technique de redirection quand une page a changé d’adresse et que vous souhaitez que les moteurs de recherche remplace l’ancienne adresse par la nouvelle dans leur index.
Redirect 301 http://www.un-meilleur-referencement.fr/index.php http://www.un-meilleur-referencement.fr/
Désactiver la boite de dialogue pour les téléchargements depuis votre site
En effet si vous mettez en téléchargement des documents sur votre site, il est probable qu’une boite de dialogue s’ouvre pour vous demander si vous voulez ouvrir le fichier ou le télécharger. grace à cette ligne de code, le document sera téléchargé d’office.
AddType application/octet-stream .pdf
AddType application/octet-stream .zip
AddType application/octet-stream .mov
éviter les www
ces lignes permettent de rediriger les adresses qui ne contiennent pas de www vers votre site
RewriteEngine On
RewriteBase /
RewriteCond %{HTTP_HOST} ^www.judo-club-peronnas.fr [NC]
RewriteRule ^(.*)$ http://judo-club-peronnas.fr/$1 [L,R=301]
La classique custom page error ou page d’erreur personnalisée
si vous avez un dossier error a la racine de votre site qui contient vos page d’erreur voici ce qu’il faut inscrire dans le fichier .htaccess
ErrorDocument 401 /error/401.php
ErrorDocument 403 /error/403.php
ErrorDocument 404 /error/404.php
ErrorDocument 500 /error/500.php
Compression des fichiers
optimiser le temps de chargement de votre page en compressant les fichiers qui entrent en jeux dans sa composition.
# compress text, html, javascript, css, xml:
AddOutputFilterByType DEFLATE text/plain
AddOutputFilterByType DEFLATE text/html
AddOutputFilterByType DEFLATE text/xml
AddOutputFilterByType DEFLATE text/css
AddOutputFilterByType DEFLATE application/xml
AddOutputFilterByType DEFLATE application/xhtml+xml
AddOutputFilterByType DEFLATE application/rss+xml
AddOutputFilterByType DEFLATE application/javascript
AddOutputFilterByType DEFLATE application/x-javascript
Mise en cache des fichiers
encore un moyen d’optimiser le chargement de votre site internet, la mise en cache des fichiers.
<FilesMatch ".(flv|gif|jpg|jpeg|png|ico|swf|js|css|pdf)$">
Header set Cache-Control "max-age=2592000"
</FilesMatch>
et pour éviter la mise en cache de certains type de fichiers:
# explicitly disable caching for scripts and other dynamic files
<FilesMatch ".(pl|php|cgi|spl|scgi|fcgi)$">
Header unset Cache-Control
</FilesMatch>
Protection contre le hotlinking
certaines personnes emprunte des images pour leur site web qui sont hébergées sur votre serveur web. cela peut agacer car si tout le monde fait comme ça bonjour les performances voici donc le code pour éviter le hotlinking.
RewriteBase /
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http://(www.)?un-meilleur-referencement.fr/.*$ [NC]
RewriteRule .(gif|jpg|swf|flv|png)$ /feed/ [R=302,L]
Prévention contre le hacking
pour prévenir toutes tentatives de hack depuis certaines URL bizard.
RewriteEngine On
# proc/self/environ? no way!
RewriteCond %{QUERY_STRING} proc/self/environ [OR]# Block out any script trying to set a mosConfig value through the URL
RewriteCond %{QUERY_STRING} mosConfig_[a-zA-Z_]{1,21}(=|\%3D) [OR]# Block out any script trying to base64_encode crap to send via URL
RewriteCond %{QUERY_STRING} base64_encode.*(.*) [OR]# Block out any script that includes a <script> tag in URL
RewriteCond %{QUERY_STRING} (<|%3C).*script.*(>|%3E) [NC,OR]# Block out any script trying to set a PHP GLOBALS variable via URL
RewriteCond %{QUERY_STRING} GLOBALS(=|[|\%[0-9A-Z]{0,2}) [OR]# Block out any script trying to modify a _REQUEST variable via URL
RewriteCond %{QUERY_STRING} _REQUEST(=|[|\%[0-9A-Z]{0,2})# Send all blocked request to homepage with 403 Forbidden error!
RewriteRule ^(.*)$ index.php [F,L]
Bloquer l’accès à votre fichier .htaccess
# secure htaccess file
<Files .htaccess>
order allow,deny
deny from all
</Files># prevent viewing of a specific file
<Files secretfile.jpg>
order allow,deny
deny from all
</Files># multiple file types
<FilesMatch ".(htaccess|htpasswd|ini|phps|fla|psd|log|sh)$">
Order Allow,Deny
Deny from all
</FilesMatch>
Renommer votre fichier .htaccess pour éviter qu’il soit repéré
AccessFileName htacc.ess
Eviter l’affichage et le listing de vos répertoires sur votre site
# disable directory browsing
Options All -Indexes
# enable directory browsing
Options All +Indexes
Assigner la page d’index par défaut de votre site internet
DirectoryIndex travaux.php
Bloquer certain visiteur en s’appuyant sur leur domaine
# block visitors referred from indicated domains
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteCond %{HTTP_REFERER} scumbag.com [NC,OR]
RewriteCond %{HTTP_REFERER} wormhole.com [NC,OR]
RewriteRule .* – [F]</ifModule>
Bloquer l’accès à votre site de certains bot en fonction de leur header
# block visitors referred from indicated domains
<IfModule mod_rewrite.c>
SetEnvIfNoCase ^User-Agent$ .*(craftbot|download|extract|stripper|sucker|ninja|clshttp|webspider|leacher|collector|grabber|webpictures) HTTP_SAFE_BADBOT
SetEnvIfNoCase ^User-Agent$ .*(libwww-perl|aesop_com_spiderman) HTTP_SAFE_BADBOT
Deny from env=HTTP_SAFE_BADBOT
</ifModule>
Sécuriser l’accès aux dossiers en désactivant l’éxécution de script sur ceux-ci.
# secure directory by disabling script execution
AddHandler cgi-script .php .pl .py .jsp .asp .htm .shtml .sh .cgi
Options -ExecCGI
voila en èspérant que cet article aura éclairer votre lanterne pour la confection des fichiers .htaccess ainsi que certains paramètre de celui-ci. vous pourrez par exemple inclure ce genre de fichier htaccess chez ovh.