Vous pouvez y parvenir avec mod_rewrite mettre quelque chose comme ça dans le fichier .htaccess
de votre dossier racine:
RewriteEngine on
# the first condition is for avoiding an infinite loop
RewriteCond %{REQUEST_URI} !^/test/.*
RewriteRule ^(.*)$ /test/$1
Cela va rediriger vers /test/
toutes les pages/fichiers demandés à partir /
.
Si vous ne souhaitez rediriger certains fichiers utilisent règle plus spécifique (s):
RewriteEngine on
# the condition is for avoiding an infinite loop
RewriteCond %{REQUEST_URI} !^/test/.*
# redirecting only images files and files that start with "doc"
RewriteRule ^(.*\.(jpg|png|gif))$ test/$1 [L]
RewriteRule ^(doc.*)$ test/$1 [L]
Ou si vous souhaitez utiliser différents dossiers:
RewriteEngine on
# the condition is for avoiding an infinite loop
RewriteCond %{REQUEST_URI} !^/images/.*
RewriteCond %{REQUEST_URI} !^/docs/.*
# redirecting only images files and files that start with "doc"
RewriteRule ^(.*\.(jpg|png|gif))$ images/$1 [L]
RewriteRule ^(doc.*)$ docs/$1 [L]
Changé comment, à l'aide d'une redirection ou un réécriture interne? Pouvez-vous décrire ce qui est supposé se produire lorsqu'un utilisateur entre l'URL et l'autre? –
Voulez-vous dire servir un fichier comme 'root_folder/test/page.html' en tant que' example.com/page.html'? –
@ réécriture interne Pekka serait le meilleur @ Alberto-exactement –