Problema de DNS com a migração do site para o novo servidor

1

Eu tenho um sistema legado no qual estou tentando fazer uma alteração significativa na configuração, mas não estou vendo uma maneira de fazer isso de forma limpa.

O estado que herdei consiste em um site hospedado em dois servidores de aplicativos que ficam atrás de um balanceador de carga (cada servidor hospeda uma pilha LAMP). O registro A (example.com) do domínio aponta para o balanceador, assim como a entrada CNAME para 'www.'

Agora, gostaria de mover este site para outro servidor que eu configurei e pronto para usar, algo que normalmente seria bastante simples; no entanto, o problema que tenho é que os servidores que atualmente atendem o site também servem aplicativos adicionais servidos de subdiretórios nas mesmas entradas 'example.com' e 'www.example.com'.

O que eu desejo é o seguinte:    www.example.com e example.com apontam para o servidor A
   www.example.com/scripts ... e example.com/scripts ... aponte para o balanceador de carga atual

Isso teria sido simples se os serviços originalmente configurados em subdomínios, mas isso não é verdade, e fazer a migração seria bastante dolorosa para um número significativo de clientes.

Não consigo encontrar uma maneira elegante de fazer isso. Alguém tem alguma sugestão?

Atualização:

Para esclarecer, os produtos no diretório / scripts / ... são acessados programaticamente através de uma conexão SSL por aplicativos criados pelo cliente (é um serviço que recebe uma string de consulta e retorna XML). Isso tem um efeito sobre a solução?

    
por user103557 08.12.2011 / 18:11

3 respostas

1

Você não pode configurar um subdomínio para o aplicativo principal? Algo como www2.example.com (ou remover subdomínios completamente e tê-lo em apenas example.com), em seguida, basta colocar um redirecionamento da raiz do site para o novo subdomínio? Se você fizer o redirecionamento usando o .htaccess, poderá redirecionar tudo, exceto scripts para o novo servidor.

O arquivo .htaccess seria algo como isto:
RewriteEngine no
RewriteCond $ 1! ^ Scripts
RewriteRule (. *) link $ 1 [R = 301, L]

O código 301 acima especifica que o redirecionamento é permanente; motores de busca vão gostar disso, se você está preocupado em perder ranking. Além disso, esse código deve redirecionar os usuários para a página equivalente no novo URL, para que os indicadores e outros links para as páginas do URL antigo ainda funcionem. (Teste primeiro embora)

    
por 08.12.2011 / 18:58
0

Sim - um pouco de picles. Para uma solução de longo prazo, você provavelmente deve trabalhar para mover os outros aplicativos para seus próprios sites. Para uma solução temporária, você usaria um redirecionamento no balanceador de carga ou nos servidores LAMP originais para o novo site até que você possa alterar o registro www.

    
por 08.12.2011 / 18:31
0

Configure o proxy reverso no NewServer, o que fará com que todas as solicitações para um determinado URL / URI sejam encaminhadas para o seu servidor antigo.

Obviamente, você terá que configurar um domínio separado para o servidor antigo, mas isso mantém as URLs.

link

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