Red de conocimientos turísticos - Conocimientos sobre calendario chino - ¿Por qué no puedo acceder al sitio web mediante IP pero puedo acceder a él mediante el nombre de dominio?

¿Por qué no puedo acceder al sitio web mediante IP pero puedo acceder a él mediante el nombre de dominio?

Debido a que es un host virtual, se colocan N sitios web en el host y cada sitio web está vinculado a uno o más nombres de dominio. Por lo tanto, acceder al host utilizando nombres de dominio puede resolverse en el directorio del sitio web. si se utiliza IP, el servidor no sabrá en qué directorio analizar.

Debido a que la solicitud http contiene información del nombre de dominio, al acceder usando el nombre de dominio, el servidor host virtual devolverá el sitio web según el nombre de dominio. El acceso IP directo se debe a que no hay información del nombre de dominio. por lo que el servidor no sabe a cuál acceder. Directorio del sitio web, solo los hosts virtuales o VPS con IP compartida tienen esta situación. Por ejemplo, se puede acceder directamente a servidores con función de IP independiente vinculada o host independiente a través del nombre de dominio y la IP.

¿Por qué se puede acceder a algunos sitios web a través del host pero no se puede acceder directamente ingresando la dirección IP?

La primera posibilidad:

Si se trata de una solicitud http simple, especificando el host para usar el nombre de dominio para acceder e ingresando directamente la dirección IP, el efecto debería ser el mismo. , pero está limitado a una solicitud. Hoy en día, cuando abres una página web, las cosas se vuelven mucho más complicadas. La página web no es solo un html, sino que también tiene muchos estilos CSS, scripts javascript y otros elementos web (Flash, etc.) que deben descargarse. Al ejecutar scripts js o complementos Flash, también se realizan nuevas solicitudes de red.

Las direcciones de recursos css y js contenidas en el html, así como la dirección de solicitud de red emitida por el script js, se pueden registrar utilizando nombres de dominio (en lugar de direcciones IP). Si cambia el host, entonces su sistema sabrá que este nombre de dominio corresponde a la dirección IP correcta y se puede acceder a él sin problemas. Si no hay un host e ingresa la IP para acceder, entonces, para la dirección del nombre de dominio en el recurso web o script, el sistema no sabe que el nombre de dominio es la IP que ingresó y aún necesita obtener la dirección IP a través de DNS. Si hay algún problema con el DNS, no se cargará correctamente.

Al principio, el muro solo realizaba secuestro y contaminación de DNS. No se podía obtener la IP correcta a través del nombre de dominio. Si hacía ping a un sitio web, la dirección IP real a la que se hizo ping era una dirección IP falsa. Se agotó el tiempo de espera y no hubo respuesta, y puede que haya sido incorrecto. El servidor responde, pero cuando hace ping a su dirección IP, el resultado es correcto, por lo que cambiar el host es efectivo. Más tarde, a medida que el muro se volvió más avanzado y pudo bloquear y secuestrar sus solicitudes, surgirían problemas sin importar cómo hiciera ping. Vale la pena señalar que todavía hay muchos sitios web que solo tienen contaminación de DNS y ningún comportamiento dirigido a direcciones IP (o las direcciones IP del sitio web se actualizan constantemente y la actualización del muro es lenta), por lo que cambiar el host sigue siendo efectivo.

Segunda posibilidad:

Algunos programas del lado del servidor de sitios web necesitan usar su URL para determinar el contenido devuelto (tal vez el servidor en una dirección IP deba proporcionar acceso a dos sitios web al mismo tiempo). mismo tiempo), entonces su URL no contiene el nombre de dominio correcto y el programa del servidor no podrá responderle (no sabe a qué desea acceder) y tendrá que devolver un error.

l>