[Network] Virtual Host(가상 호스트)란?
가상 호스트란?
기본적으로 웹서버에 존재하는 주 호스트 도메인을 등록하여 사용하고 있지만 추가적으로 한 서버에 여러 도메인을 등록하여 사용한다는 의미이다. 가상 호스트 서버를 이용하여 제한된 공간 안에서 여러 개의 홈페이지를 제공해주는 서비스가(웹, 메일 등) 호스팅 서버스이다.
Apache에서는 두 가지 방식을 제공한다.
1. Name-based Virtual Host
Name-based 방식의 가상 호스트는 같은 IP 주소를 가지고 여러 개의 호스트명을 가진다.(가장 보편적인 방법)
2. IP-based Virtual Host
IP Address 기반의 가상 호스트라고 하며, 각 웹 사이트마다 다른 IP Address 또는 Port를 가지는 방식이다.
IP Adress를 다르게 하는 방법도 있지만 동일한 IP Address를 주고 Port를 다르게 하는 방법도 있다.
- IP Address를 다르게 하는 방법
가상 호스트 각각에 하나씩의 IP Address를 할당하여 운용 웹 호스팅 초창기에 사용된 방법이다.
Name-based virtual host 보다 안정적이고, 더 효율적이며, 관리하기도 쉽다. 이 방식으로 하면 각각의 웹사이트를 하나의 물리적인 서버에서 별도 관리할 수도 있다.
- Port를 다르게 하는 방법
동일한 호스트에 포트만 다르게 지정하여 운용 80번이 주 호스트이고, 8080, 8081, 8082와 같이 순서대로 포트를 지정하여 가상 호스트를 할당한다.
참고 - https://blog.embian.com/46
https://seokbeomkim.github.io/posts/vhost-host-header/