2010-05-06 27 views
6

Tengo esta pequeña duda, pero no pude encontrar información al respecto, probablemente porque no estoy buscando lo correcto.¿Cómo funcionan conjuntamente los hospedajes compartidos, nombres de dominio y DNS?

Cuando un navegador solicita "www.midominio.com", el servidor DNS devuelve una dirección IP, luego el navegador va allí ... pero ¿qué ocurre entonces? Quiero decir, esa dirección IP podría ser un alojamiento compartido que contiene cientos de páginas web y dominios, entonces, ¿cómo sabe dónde tiene que ir?

¿Algo hace el servidor web? ¿es algo que podría implementar en una aplicación web?

Quiero decir, por ejemplo, tengo una aplicación web que contiene cuentas, y cada cuenta tiene una página web predeterminada. Podrías acceder a esa página pasando la cuenta namne, por ejemplo "www.midominio.com/myaccount", pero ahora quiero registrar "www.myaccount.com" y luego obtendré el "www.midominio.com/myaccount" contenido. ¿Es posible?

Saludos cordiales.

Respuesta

11

HTTP/1.1 requiere que todas las solicitudes incluyen una cabecera Host que incluye el nombre de dominio que escribió en tanto una solicitud básica para "http://www.example.com/foo/bar.html" se verá así:.

GET/foo/bar. html HTTP/1.1 Host
: www.example.com

y el servidor web será entonces capaz de utilizar el encabezado de host para encaminar la petición a la página web correcta, incluso si hay más de uno en la misma Dirección IP.

+0

Supongo que el servidor web rechazará cualquier solicitud a un Host que no se encuentre en su lista de "host virtual", ¿hay alguna manera de obligarlo a aceptarlo todo? o estoy sugiriendo algo enojado? : D – vtortola

+1

Depende del servidor (por ejemplo, Apache vs. IIS, etc.) cómo lo configura, pero puede tener un host "catch-all", sí. –

+0

¿Sabes qué debo buscar para configurar IIS7 para que haga eso? el nombre de los parámetros, o la técnica ... algo: D. Gracias. – vtortola

2

El servidor web maneja qué aplicación responde a su solicitud. Su "alojamiento compartido" tiene otro nombre. Se llama "hosts virtuales". El servidor web tiene una lista de "hosts virtuales" y, dependiendo de cómo llegó al host (a través de qué nombre de host), el servidor web elige qué aplicación responde a su solicitud.

+0

Supongo que el servidor web rechazará cualquier solicitud a un host que no esté en su lista de "host virtual", ¿hay alguna manera de obligarlo a aceptarlo todo? o estoy sugiriendo algo enojado? : D – vtortola

+1

Por lo general, acepta todas las solicitudes a menos que haya definido "hosts virtuales". Por lo general, hay algún tipo de controlador predeterminado. – dlamotte

+0

¿Tiene alguna información al respecto o podría decirme qué debo buscar? ¡Gracias! – vtortola

Cuestiones relacionadas