진짜 개발자
본문 바로가기

Linux/CentOS

CentOS7 - Apache Web(Http)서버 구축

728x90

Apache 웹서버 구축

1. 아파치 웹서버 설치

- yum install -y httpd



2. 설정파일 편집 및 분석

- vi /etc/httpd/conf/httpd.conf


1) ServerRoot "/etc/httpd" 

- 설정, 에러, 로그 등이 위치할 서버의 디렉토리 위치를 설정하는 줄이다.


2.  Listen 80

- apache 서버와 바인딩 시킬 포트를 지정하는 줄이다.


3. DocumentRoot "/var/www/html"

- 클라이언트에게 제공할 웹페이지(웹문서)가 위치한 디렉토리를 지정하는 줄


4. DirectoryIndex index.html

- 사용자가 디렉토리를 지정할 경우 기본적으로 제공할 웹문서의 이름을 지정하는 줄

 , 즉 사용자가 별다른 자원을 지정한것이 아닌 서버의 주소만을 입력한경우 제공할 기본파일을 지정하는 줄


5. <VirtualHost *:80>

- 한 IP에서 여러개의 도메인으로 웹사이트를 구성할 시 사용

- 당연히 각각의 웹사이트 도메인에 대해 DNS서버에서 하나의 IP를 가리켜야한다

ex) 예를 들어 1.0.0.21에서 www.example.com , www.galid.org 웹서버를 실행하고 싶다면 아래와 같이 작성한다

NameVirtualHost *:80

<VirtualHost *:80>
DocumentRoot /www/example
ServerName www.example.com

</VirtualHost>

<VirtualHost *:80>
DocumentRoot /www/galid
ServerName www.galid.org

</VirtualHost>



3. 방화벽 설정

- 80/tcp 에대한 방화벽을 열고 리로드한다


4. 기본 웹문서 만들기

- vi /var/www/html/index.html 

 /etc/httpd/conf/httpd.conf 의 DirectoryIndex에 설정한 파일이름(index.html)으로 DocumentRoot에 웹문서를 만든다


5. 아파치 서버 시작

- systemctl start httpd



6. 확인

- 클라이언트에서 Apache 서버의 IP를 입력해본다


7. Error

- 외부에서 접속 시도시 아래와 같이 Forbidden을 볼 수 있다.


- /etc/httpd/conf/httpd.conf 파일을 아래와 같이 수정한다