web-dev-qa-db-fra.com

Comment rediriger toutes les demandes entrantes vers un domaine vers un autre domaine?

J'ai un blog WordPress qui fonctionne actuellement sur un serveur Apache2 et que je dois transférer complètement vers un nouveau nom de domaine.

http://www.somesite.com/ à http://www.someothersite.com

J'ai besoin que toutes les demandes de ce domaine soient redirigées vers un nouveau nom de domaine. Cela peut-il être fait avec .htaccess? Si oui, quelle est la règle à utiliser?

1
rsman

Si les URL sont exactement les mêmes et que la seule différence est le nom de domaine, il est alors très facile à faire. Il suffit de placer cette ligne dans .htaccess dans le dossier racine du site Web de www.somesite.com:

Redirect 301 / http://www.someothersite.com/

La règle ci-dessus redirigera TOUTES les demandes vers un nouveau domaine en utilisant la même URL et en préservant la chaîne de requête (redirection permanente 301).

En même temps, vous devrez peut-être désactiver toutes les règles de réécriture existantes dans ce fichier .htaccess, sinon WordPress pourrait traiter toutes les règles avant que cette redirection ne se produise (RewriteRule a une priorité supérieure à Redirect).

2
LazyOne

LazyOne m'a battu :) :) Donc ce qu'il a dit .... PLUS:

Dans le tableau de bord Wordpress, vous devez rechercher le paramètre dans lequel vous indiquez le nom de domaine de votre blog et le remplacer par le nouveau nom de domaine. Sinon, la plupart des liens pointeront vers l'ancien domaine ... qui sera bien sûr renvoyé mais il sera évidemment inefficace.

1
Itai

Le moyen le plus simple consiste à utiliser une redirection 301 dans un fichier .htaccess sur l'ancien domaine qui pointe vers le nouveau domaine. Utilisez le code suivant:

Options +FollowSymLinks
RewriteEngine on
RewriteRule (.*) http://www.newdomain.com/$1 [R=301,L]

Rememer pour changer www.newdomain.com en votre nouveau nom de domaine actuel. Ce code dépend de l'installation de mod_rewrite sur le serveur Apache. C'est habituellement.

Une autre alternative consiste à utiliser Rewritematch, par exemple.

RedirectMatch 301 (.*) http://www.abookaboutchina.com/$1
1
Rincewind42