Hospedando domínios personalizados com flexibilidade de endereços IP

1

Estou criando um pequeno serviço no qual os usuários receberão um subdomínio, como:

myusername.myservice.com
anotheruser.myservice.com

Eu sei que posso configurar um vhost curinga e usar alguma regex de configuração, veicular os arquivos assim:

myusername.myservice.com        ===> /var/www/myusername
anotherusername.myservice.com   ===> /var/www/anotherusername

O problema é que eu gostaria de permitir que os usuários aliassem seus próprios nomes de domínio ao serviço deles.

Entendo que, para o servidor da Web, quando o usuário adiciona o domínio por meio da interface da Web, posso criar facilmente um vhost para o domínio no nginx e atualizar o servidor da Web.

O problema é que eu preferiria NÃO permitir que os usuários adicionassem um registro A do endereço IP do meu servidor web, pois preferiria manter as coisas flexíveis (quando atualizamos nossa infraestrutura para algo mais complexo para escalar).

Qual é a melhor maneira de conseguir isso?

    
por F21 10.12.2012 / 01:40

1 resposta

1

Como eu mencionei no comentário acima, se você não estiver usando SSL, isso é muito simples, basta configurar os registros CNAME dos seus clientes para o seu domínio e é um registro. Então você acaba com isso:

WWW.MYDOMAIN.COM | CNAME --> YOURDOMAIN.COM | A --> 123.123.123.123

Se você estiver executando o SSL, há algumas maneiras diferentes de trabalhar com isso. Você não pode usar a solução acima, pois isso causará erros de certificado na maioria dos navegadores. Em vez disso, geralmente acabo com a mesma solução acima, mas em vez de veicular seu conteúdo diretamente desse IP e nome de domínio, ele veicula uma página / script de redirecionamento que força o usuário a uma URL SSL automaticamente.

O resultado final, o usuário pode usar seu próprio nome de domínio personalizado, mas o URL que é retornado é o seu domínio depois de redirecionar o usuário.

Como eu disse, há muitas outras maneiras de fazer isso, mas é isso que eu prefiro.

    
por 10.12.2012 / 02:53