hosts 파일은 도메인의 IP를 찾을 때 컴퓨터가 맨 처음 조사하는 파일이다(그러니깐 DNS 파일인 것이다).
로컬에서 개발을 진행할 때 로컬에서만 사용할 도메인과 IP주소를 연결해 줘야 하는데, 이 때 리눅스와 맥은 /etc/hosts
파일에, 윈도우는 C:WindowsSystem32Driversetchosts
파일에 내용을 작성해 준다. 내용은 아래와 같다.
##
# Host Database
#
# localhost is used to configure the loopback interface
# when the system is booting. Do not change this entry.
##
127.0.0.1 localhost MytoryMP.local
255.255.255.255 broadcasthost
::1 localhost
127.0.0.1 video.localhost
위 내용을 보면 맨 마지막 줄에 video.localhost
라는 도메인이 127.0.0.1
에 연결돼 있는 것을 볼 수 있다.
127.0.0.1
은 서버 컴퓨터 자신을 가리키는 IP 주소다. video.localhost
는 내가 로컬에서 개발하는 사이트고, IP주소를 내 컴퓨터로 설정해 둔 것이다. video.localhost
라는 도메인은 내 컴퓨터 외에는 어디에도 없는 도메인이기 때문에 여기 적어 주지 않으면 컴퓨터가 도메인의 IP주소를 찾지 못한다.
localhost
가 기본적으로 127.0.0.1
에 연결돼 있어서 video.localhost
처럼 localhost
의 서브도메인을 사용하면 지정해 주지 않아도 알아서 찾는 경우도 있는데, 그래도 부작용이 나타나는 경우가 있으니 꼭 써 주자.
팁1: 주석 뒤 첫 줄을 보면 127.0.0.1 localhost MytoryMP.local
이라고 씌어 있다. 127.0.0.1
에 localhost
와 MytoryMP.local
이라는 두 도메인을 연결한 것이다. 즉, IP에 연결할 도메인은 띄어쓰기로 구분해서 여러 개 쓸 수 있다.
팁2: 주석 뒤 셋째 줄을 보면 ::1 localhost
이라고 돼 있다. ::1
은 ipv6에서 내 컴퓨터를 가리키는 IP주소다. ipv6에 대해서는 위키피디아를 참고하라.