Rediriger un nom de domaine vers un sous-répertoire
Quand votre nom de domaine pointe vers un hébergement mutualisé, vous n’avez, la plupart du temps, pas le droit de modifier les VirtualHost du serveur Apache.
Pour pallier ce manque, une redirection s’impose mais par un autre biais: l’utilisation de l’URL Rewrting.
Les directives d’URL Rewriting doivent être placées dans le fichier .htaccess à la racine du site, en tous cas au dessus du répertoire de destination finale.
Un exemple d’URL Rewriting:
RewriteEngine on RewriteCond %{HTTP_HOST} ^(www.)?domain.com$ [NC] RewriteCond %{REQUEST_URI} !^/dossier/ RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule ^(.*)$ /dossier/$1 RewriteCond %{HTTP_HOST} ^(www.)?domain$ [NC] RewriteRule ^(/)?$ dossier/index.php [L]
Les directives ci-dessus permettront de rediriger le nom de domaine vers “/dossier“.
Bien sûr, si vous avez accès aux fichiers contenant la déclaration des VirtualHost, vous n’avez pas besoin de pratiquer l’URL Rewriting.