Est-il possible d'utiliser des caractères génériques dans le fichier .htaccess pour la masse se déplace?

StackOverflow https://stackoverflow.com/questions/1542066

Question

Je retravaille mon site, va être renommer un grand nombre de répertoires, et ont besoin d'un moyen simple d'écrire mon .htaccess réoriente pour toutes ces pages. J'espère une solution qui ne comprend pas une très longue liste de fichiers. Mon fichier .htaccess est énorme car il est.

Était-ce utile?

La solution

Vous pouvez utiliser mod_alias ou mod_rewrite pour votre redirection. travaux mod_rewrite avec des expressions régulières et mod_alias peuvent travailler sur les deux expressions régulières et préfixes chemin.

Voici quelques exemples pour quand vous voulez réécrire /foo/… à /bar/…:

# mod_alias
# path prefix
Redirect 301 /foo /bar
# regular expression
RedirectMatch 301 ^/foo/(.*) /bar/$1

# mod_rewrite
RewriteEngine on
RewriteRule ^foo/(.*) /bar/$1 [L,R=301]

Notez que mod_alias et mod_rewrite ont des exigences différentes pour leurs modèles d'expressions régulières. mod_alias ne nécessite toujours le chemin complet de l'URL. Mais avec mod_rewrite cela dépend si vous l'utilisez dans un fichier .htaccess ou dans la configuration du serveur / section hôte virtuel. Dans un fichier .htaccess, vous devez écrire le modèle sans le préfixe de chemin par répertoire (en cas de la racine du document juste de /, en cas de /quux/ il est /quux/).

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top