Configurando um domínio de terceiro nível

1

Eu tenho uma instância do Apache servindo um site na porta 8000 do meu servidor (cujo ip é 164.177.156.36)

Listen 8000

<VirtualHost *:8000>
    ServerName lessico.pistacchioso.com
    DocumentRoot /home/pistacchio/sites/lessico/
    [..]

Isso funciona se eu visitar o link

No meu provedor de registro (que não é o mesmo do meu provedor de servidor), eu tenho os seguintes registros definidos:

pistacchioso.coméodomínioqueeuregistreiequeroqueolessico.pistacchioso.comaponteparao link

Esses servidores seeweb.it são os do registrador de domínio, estou ok deixando o correio lá (MX) e não consigo remover esses dois registros NS (enquanto eu posso adicionar outros).

No momento, se eu visitar o link , ainda vejo a página de cortesia do registro. O DNS já está atualizado, porque pistacchio.com mostra a página padrão do apache. Qualquer ajuda? Obrigado

    
por pistacchio 02.02.2012 / 07:45

1 resposta

2

Posso confirmar isso para mim:

  • O DNS mostra que eu esperaria:

    james@bodacious-wired:~$host lessico.pistacchioso.com
    lessico.pistacchioso.com is an alias for pistacchioso.com.
    pistacchioso.com has address 164.177.156.36
    
  • A navegação para http://164.177.156.36:8000/ aparece para mostrar a página correta

  • Navegar para http://lessico.pistacchioso.com:8000/ mostra a mesma página
  • Navegando http://lessico.pistacchioso.com/ mostra the default web page for this server. porque no content has been added, yet.

Acho que o que está faltando aqui é que você está dizendo ao navegador para usar o protocolo http - bem nos quatro primeiros caracteres do URL, http://

Os navegadores entendem que, a menos que outro número de porta seja especificado, http significa porta 80, então http://lessico.pistacchioso.com/ é interpretado como se fosse http://lessico.pistacchioso.com:80/ . No entanto, no snippet que você forneceu acima, você usou VirtualHost *:8000 para dizer ao Apache que apenas escutasse na porta 8000 essa solicitação.

Isso explica por que http://lessico.pistacchioso.com:8000/ funciona: você está dizendo explicitamente ao navegador para usar a porta 8000; e você disse ao Apache para escutar na porta 8000 e o que fazer com as solicitações recebidas lá.

Altere essa linha para VirtualHost *:80 e você estará respondendo ao tráfego na porta 80. A diretiva ServerName que você tem na próxima linha garante que somente o tráfego para o host lessico.pisacchioso.com será tratado por este vhost - todos os outros nomes de host ainda voltarão para o vhost padrão com o conteúdo padrão que você já conhece :)

Editado para adicionar:

Há uma outra ruga. Você disse:

if I visit http://lessico.pistacchioso.com/ I still see the register's courtesy page. The DNS already updated, because pistacchio.com shows apache's standard default page

Isso é diferente do que eu vejo - recebo a página padrão do Apache em http://lessico.pistacchioso.com/ . Eu estou supondo que seu host DNS atualizou algo entre quando você postou e quando eu respondi; ou possivelmente você ainda tem um cache de registros antigo. Sugiro verificar isso com host , como fiz acima, para garantir que você esteja vendo os registros corretos.

    
por 02.02.2012 / 07:56