Redirecionar URL https

Redirecionar URL https

Meu aplicativo é veiculado https://beta.myapp.com(estou forçando https em todos os lugares) e agora quero mudar para https://www.myapp.com.

Estou me perguntando como redirecionar corretamente todas beta.as solicitações para www..

No momento, wwwele está apontando para o mesmo aplicativo e o aplicativo está redirecionando para beta(você receberá um erro de SSL se tentar acessar https://www).

O que eu acho que é factível:

  • Usar o wwwcertificado no aplicativo principal e criar outro aplicativo (com o betacertificado) encarregado de redirecionar todas as solicitações para o outro aplicativo. (por exemplo, https://beta.myapp.com/aboutpara https://www.myapp.com/about). Mas meu aplicativo está hospedado no Heroku e tenho que pagar US$ 20/mês/certificado, então mais um aplicativo significa mais despesas.
  • Obtenha um certificado curinga/multidomínio cobrindo ambos wwwe beta. Mas já tenho 2 certificados, então não quero comprar outro.

Existe alguma outra/melhor maneira de fazer isso?

Responder1

Isso é um pouco complicado e você não tem muitas opções.

Você pode lidar com o redirecionamento dentro do aplicativo apontando beta/www (e domínio raiz) para o aplicativo principal do Heroku. No entanto, para evitar erros de SSL, você precisa instalar um certificado que cubra os nomes de host www e beta.

Como o Heroku não oferece a capacidade de associar dois certificados no mesmo aplicativo, nesse caso você precisaria adquirir um certificado curinga.

A outra solução é apontar betapara outro servidor. Instale o certificado nesse servidor e redirecione o tráfego para o aplicativo principal. Infelizmente, você ainda é obrigado a instalar o certificado aqui porque a negociação SSL acontece antes do cabeçalho de redirecionamento HTTP ser enviado, portanto, se você não instalá-lo, seus visitantes verão um erro de certificado (ou aviso) antes de serem redirecionados. Dependendo do navegador, o redirecionamento pode ou não acontecer nesse caso.

Ambas as soluções provavelmente exigem um esforço econômico adicional de sua parte, principalmente devido à flexibilidade limitada do Heroku neste caso. Um requer a compra de um certificado curinga, o outro, a compra de um novo endpoint SSL para o outro aplicativo (a menos que você encontre uma maneira de hospedá-lo em um servidor barato em algum lugar).

Entendo que você tenha adquirido recentemente o certificado para o site principal. Lembre-se de que a maioria dos provedores de certificados SSL oferece um reembolso de 30 dias. Você pode querer ver se consegue obter um reembolso e comprar o curinga.

Se eu tivesse que fazer uma escolha, provavelmente escolheria um curinga.

Responder2

Já fiz isso antes de usar CNAMEs, como Nick sugeriu. Outra maneira provavelmente (pode não ser prática para você) é usar certificados curinga.

A última opção, se você conhece seus nomes alternativos, é fornecer o SAN (Subject Alternate Names) em seu certificado que contém todos os seus nomes de host.

http://en.wikipedia.org/wiki/Subject_Alternative_Name

informação relacionada