Je migre un site Web d'une plate-forme à une autre et, dans ce processus, je supprime l'ancien nom de domaine. Il n'y a pas de relation directe entre le chemin s de l'ancien et du nouveau site Web et, par conséquent, je souhaite rediriger tous les anciens chemins vers la page d'accueil des nouveaux sites Web: I.e. olddomain.example/any_path doit être redirigé vers la page d'accueil de newdomain.example . Je suis conscient des conséquences SEO de cela.
Ma solution actuelle consiste à utiliser la directive RedirectPermanent , afin que mon .htaccess
dans le répertoire racine du domaine contienne:
RedirectPermanent / https://newdomain.example/
Comment puis-je obtenir que tout chemin sur olddomain.example (par exemple olddomain.example/any_path ) est redirigé vers la page d'accueil (et non le chemin correspondant) de newdomain.example ?
Je pense que cela devrait faire l'affaire pour vous. Sur l'ancien domaine, placez ce code dans le fichier .htaccess
(ceci suppose qu'une redirection 301 est utilisée).
RewriteEngine On
RewriteRule (.*) https://newdomain.example [R=301,L]
Ma solution actuelle consiste à utiliser la directive
RedirectPermanent
La directive RedirectPermanent
(mod_alias) est préfixe correspondant. Ainsi, comme vous l'avez trouvé, vous serez redirigé vers le "chemin correspondant" du nouveau domaine.
Cependant, la directive complémentaire mod_alias RedirectMatch
correspond à l'aide d'une expression régulière et vous permettra de rediriger toutes les URL vers l'URL racine unique.
RedirectMatch 301 / https://newdomain.example/
Ceci est légèrement préférable à l'utilisation de mod_rewrite (RewriteRule
), sauf si vous utilisez déjà mod_rewrite pour d'autres redirections.