Apache | Apache 기본 설정 | 호스트 접근 설정 (hosts 파일)

hosts 파일을 사용 호스트로 접근 설정하는 방법에 대해 설명한다.

hosts 파일을 사용한 접근 설정

Apache를 로컬 환경에 설치한 경우 브라우저에서 접근하는 경우에는 자신을 나타내는 “localhost"가 사용된다. 또한 “localhost"이외에도 “127.0.0.1"에서도 접근이 가능하다.

“127.0.0.1"은 로컬 루프백((Local Loopback) 주소라고 하는 자신을 가리키는 특별한 IP 주소이다. 로컬 호스트에 IP 주소를 설정하는 경우에도 “127.0.0.1"는 항상 자신을 나타낸다.

그래서 Apache 등을 클라이언트와 동일한 컴퓨터에서 실행하는 경우에는 “127.0.0.1"로 접근하면 자신의 PC에 액세스하는 것이기에, 결과적으로 같은 컴퓨터에서 실행중인 Apache에 접근할 수 있다.

그럼 “localhost"이란? IP 주소 “127.0.0.1"에 설정되어 있는 호스트명이다. 그러기에 “localhost"에 접근하면 “127.0.0.1"에 접근하게 되어, 결과적으로 자신에게 접근하게 된다.

이 호스트명과 IP 주소에 대해 정의하는 곳이 “hosts” 파일이다. 호스트명과 IP 주소를 정의하기 위해서는 DNS 서버 등을 사용하는 방법도 있지만, 로컬에 “hosts” 파일에 작성하여 DNS 서버 등을 참조하지 않고 IP 주소에 대한 호스트명을 등록할 수 있다.

hosts 파일의 위치

Windows의 경우에 “hosts"파일은 “C:\Windows\System32\drivers\etc"에 위치한다.

C:\Windows\System32\drivers\etc>dir
 C 드라이브의 볼륨에는 이름이 없습니다.
 볼륨 일련 번호: XXXX-XXXX

 C:\Windows\System32\drivers\etc 디렉터리

2019-03-19  오후 01:53    <DIR>          .
2019-03-19  오후 01:53    <DIR>          ..
2019-03-19  오후 01:49               824 hosts <<<<<<<<<<<<<<<<< 여기 존재한다.
2019-03-19  오후 01:49             3,683 lmhosts.sam
2019-03-19  오후 01:49               407 networks
2019-03-19  오후 01:49             1,358 protocol
2019-03-19  오후 01:49            17,635 services
               5개 파일              23,907 바이트
               2개 디렉터리  458,572,058,624 바이트 남음

C:\Windows\System32\drivers\etc>

“hosts"는 텍스트 파일이므로 텍스트 편집기으로 열어 볼 수 있다.

# Copyright (c) 1993-2009 Microsoft Corp.
#
# This is a sample HOSTS file used by Microsoft TCP/IP for Windows.
#
# This file contains the mappings of IP addresses to host names. Each
# entry should be kept on an individual line. The IP address should
# be placed in the first column followed by the corresponding host name.
# The IP address and the host name should be separated by at least one
# space.
#
# Additionally, comments (such as these) may be inserted on individual
# lines or following the machine name denoted by a '#' symbol.
#
# For example:
#
#      102.54.94.97     rhino.acme.com          # source server
#       38.25.63.10     x.acme.com              # x client host

# localhost name resolution is handled within DNS itself.
#	127.0.0.1       localhost
#	::1             localhost

“hosts"파일은 IP 주소에 대한 호스트명을 등록 할 수 있다. 형식은 다음과 같다.

IP주소		호스트명

기본 설정으로 “127.0.0.1"에 “localhost"가 호스트로 등록되어 있다. 여기에 등록이 되어 있기에 “localhost"를 입력하면 해당 호스트명의 IP 주소가 “127.0.0.1"임을 알 수 있으며, 결과적으로 “127.0.0.1"에 접근할 수 있는 것이다 .

여기서 127.0.0.1은 IPv4 주소이고, ::1는 IPv6 주소이다.

Windows 환경에서 확인한 결과 모두 코멘트로 되어 있었다. 그대로 하면 여러가지 불편이 나오는 경우가 있으므로 다음과 같이 “#“을 제거하도록 한다.

# localhost name resolution is handled within DNS itself.
127.0.0.1           localhost
#	::1             localhost

Windows의 경우 관리자 권한으로 실행한 텍스트 에디터가 아닌 편집할 수 없을 수도 있기에 주의하도록 한다.




최종 수정 : 2019-12-10