====== Htaccess ====== Les fichiers htaccess, c'est la misère. ===== Redirections simples ===== Redirige chaque requête sur page.php RewriteEngine On RewriteRule .* page.php Redirige vers un sous-domaine, par exemple www : RewriteEngine on Rewritecond %{HTTP_HOST} ^exemple.com$ Rewriterule ^(.*) http://www.monsite.com/$1 [QSA,L,R=301] Rediriger vers un dossier en particulier sans afficher le dossier concerné (utile quand on a /var/www/dokuwiki mais qu'on veut que le dokuwiki soit accessible depuis monsite.com/ ) RewriteEngine on Rewritecond %{HTTP_HOST} ^exemple.com Rewritecond %{REQUEST_URI} !^/MonSite Rewriterule ^(.*)$ /MonSite/ ===== Réécriture des URL ===== Le module mod_rewrite permet la réécriture des URL : ''sudo a2enmod rewrite'' Lance testing.php avec la variable GET contenant l’URL mis par le visiteur RewriteEngine On RewriteCond %{REQUEST_URI} !testing.php RewriteRule (.*) testing.php?var=$1 \n"); print("var: $var\n"); ?> Rediriger automatiquement le visiteur en HTTPS quand il visite le site en HTTP RewriteEngine On RewriteCond %{SERVER_PORT} 80 RewriteRule ^(.*)$ https://www.monsite.fr/$1 [R,L] ===== Mode maintenance ===== Mettre ce qui suit dans le fichier ''.htaccess'', remplacer ''XX\.XXX\.XXX\.XXX'' par l'ip. Options +FollowSymLinks -Indexes RewriteEngine On RewriteCond %{SCRIPT_FILENAME} !-d RewriteCond %{SCRIPT_FILENAME} !-f # Mode maintenance RewriteCond %{REMOTE_ADDR} !^XX\.XXX\.XXX\.XXX RewriteCond %{REQUEST_URI} !^503.php [NC] RewriteRule .* 503.php [L] ===== Source ===== Pas mal de doc utile sur https://docs.ovh.com/fr/fr/web/hosting/mutualise-tout-sur-le-fichier-htaccess/