![왜 ipaddress로 내 웹사이트에 접근할 수 없나요? 하지만 사이트 이름만 있습니다. 이게 흔한 일인가요?](https://rvso.com/image/515675/%EC%99%9C%20ipaddress%EB%A1%9C%20%EB%82%B4%20%EC%9B%B9%EC%82%AC%EC%9D%B4%ED%8A%B8%EC%97%90%20%EC%A0%91%EA%B7%BC%ED%95%A0%20%EC%88%98%20%EC%97%86%EB%82%98%EC%9A%94%3F%20%ED%95%98%EC%A7%80%EB%A7%8C%20%EC%82%AC%EC%9D%B4%ED%8A%B8%20%EC%9D%B4%EB%A6%84%EB%A7%8C%20%EC%9E%88%EC%8A%B5%EB%8B%88%EB%8B%A4.%20%EC%9D%B4%EA%B2%8C%20%ED%9D%94%ED%95%9C%20%EC%9D%BC%EC%9D%B8%EA%B0%80%EC%9A%94%3F.png)
웹사이트가 있어요http://waycoolblog.com, 하지만 해당 IP 주소를 통해 액세스할 수 없습니다. http://74.220.219.56/
왜 이런 일이 발생합니까?
내 주요 질문은 이것이 흔한 일인지 여부입니다. 내 앱에서는 사이트 이름을 직접 확인하고 사이트 이름 대신 IP 주소로 연결을 시도하고 있습니다.
이것이 제대로 작동하는지 확인하고 싶습니다.
답변1
자신이 실행 중인 서버를 모르지만 IIS에는 호스트-헤더 매핑 기능이 있습니다.
이를 통해 여러 웹사이트가 동일한 IP 주소에서 실행될 수 있지만 웹사이트의 도메인 이름이 "호스트" http 요청 헤더로 제공되어야 합니다. 서버는 이 헤더를 쿼리하고 해당 사이트의 콘텐츠를 제공합니다.
IP 주소를 통해 들어오는 모든 요청에는 호스트 헤더로 "waycoolblog.com"이 없습니다. 귀하의 서버가 두 개 이상의 웹 사이트를 호스팅하는 경우 귀하의 웹 사이트가 '기본'이 아니므로 서버가 귀하의 사이트를 제공하지 않을 가능성이 있습니다.
답변2
아마도 귀하의 사이트가 있는 서버가 사용 중일 수 있습니다.호스트 이름 기반 VirtualHosting?
답변3
주인이름기반 가상 호스팅은 매우 일반적입니다. 그렇지 않으면 IP 주소 부족이 훨씬 더 심각해질 것입니다. 어떻게 작동하나요? HTTP/1.1 클라이언트는 Host
요청의 일부로 어떤 호스트가 관심이 있는지 알려주는 헤더를 전달하고( waycoolblog.com
귀하의 경우) HTTP 서버는 이를 기반으로 어떤 콘텐츠 세트를 제공할지 결정합니다. 이를 통해 동일한 IP 주소로 다양한 호스트 이름의 콘텐츠를 제공할 수 있으므로 호스팅 비용이 훨씬 저렴해집니다. 이는 또한 모든 프로덕션 등급 표준 웹 서버 소프트웨어 시스템의 기능이기도 합니다. Apache는 이를 수행합니다. IIS와 제가 아는 다른 모든 것은 연구용 장난감이 아닙니다.
해결 방법은 Host
연결을 만드는 클라이언트 코드에서 헤더를 올바르게 전달하는 것입니다. 그러면 모든 것이 Just Work TM 으로 작동해야 합니다 .