1 votes

Problème de DNS lors de la migration du site web vers un nouveau serveur

J'ai un ancien système auquel j'essaie d'apporter un changement de configuration important, mais je ne vois pas comment le faire proprement.

L'état dont j'ai hérité consiste en un site web hébergé sur deux serveurs d'applications qui se trouvent derrière un équilibreur de charge (chaque serveur héberge une pile LAMP). L'enregistrement A (example.com) du domaine pointe vers l'équilibreur, de même que l'entrée CNAME pour "www".

J'aimerais maintenant déplacer ce site vers un autre serveur que j'ai configuré et qui est prêt à fonctionner, ce qui devrait normalement être assez simple. Cependant, le problème que j'ai est que les serveurs qui servent actuellement le site web servent également des applications supplémentaires servies à partir de sous-répertoires sur les mêmes entrées 'exemple.com' et 'www.example.com'.

Ce que je désire est le suivant :
   www.example.com et example.com pointent vers le serveur A
   www.example.com/scripts... et exemple.com/scripts... pointent vers l'équilibreur de charge actuel

Cela aurait été simple si les services avaient été initialement configurés en sous-domaines, mais ce n'est pas le cas et la migration serait assez pénible pour un grand nombre de clients.

Je n'arrive pas à trouver un moyen élégant de le faire. Quelqu'un a-t-il des suggestions à faire ?


Mise à jour :

Pour clarifier, les produits dans le répertoire /scripts/... sont accédés de manière programmatique via une connexion SSL par des applications construites par le client (c'est un service qui prend une chaîne de requête et retourne du XML). Cela a-t-il un effet sur la solution ?

1voto

Romain Points 3062

Ne pouvez-vous pas mettre en place un sous-domaine pour l'application principale ? Quelque chose comme www2.exemple.com (ou supprimer complètement les sous-domaines et avoir l'application sur exemple.com), puis mettre une redirection de la racine du site vers le nouveau sous-domaine ? Si vous faites la redirection en utilisant .htaccess, vous pouvez rediriger tout sauf /scripts vers le nouveau serveur.

Le fichier .htaccess devrait ressembler à ceci :
RewriteEngine sur
RewriteCond $1 !^scripts
Règle de réécriture (.*) http://www2.example.com/ 1 $ [R=301,L]

Le code 301 ci-dessus spécifie que la redirection est permanente ; les moteurs de recherche apprécieront cela, si vous craignez de perdre votre classement. En outre, ce code devrait rediriger les utilisateurs vers la page équivalente de la nouvelle URL, de sorte que les signets et autres liens vers les pages de l'ancienne URL fonctionnent toujours. (Testez-le d'abord)

0voto

Paul Ackerman Points 2729

Ouais - un peu difficile. Pour une solution à long terme, vous devriez probablement travailler à déplacer les autres applications vers leurs propres sites. Pour une solution temporaire, vous pouvez utiliser une redirection sur l'équilibreur de charge ou les serveurs LAMP originaux vers le nouveau site jusqu'à ce que vous puissiez changer l'enregistrement www.

0voto

Greg Points 1756

Configurez un proxy inverse sur le NewServer, qui fera en sorte que toutes les requêtes vers une certaine URL/URI soient redirigées vers votre OldServer.

Évidemment, vous devrez créer un domaine distinct pour l'ancien serveur, mais cela permet de conserver les URL.

http://httpd.apache.org/docs/2.0/mod/mod_proxy.html

<Location /legacy-app/>
    ProxyPass http://oldserver.example.com/legacy-app/
    SetEnv force-proxy-request-1.0 1
    SetEnv proxy-nokeepalive 1
</Location>

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X