본문 바로가기
Linux/서버구축 1.2.3...

(9) 워드프레스를 위한 리눅스 서버 구축 - 웹서버3 (가상호스트2)

by aegypius 2021. 4. 19.
728x90
반응형

Apache HTTP 2.4.x Virtual Host - 도메인별 설정


두 개 이상의 도메인이 서로 다른 웹사이트로 운영된다면 각각의 도메인(웹사이트)에 해당되는 웹문서가 저장될 디렉토리를 구분해야 할 것이다. <VirtualHost> 구문을 사용해서 설정한다.

앞에서 작업했던 goodmankorea.kr의 웹문서가 저장될 디렉토리를 /home/pius/ftproot/goodmankorea.kr/www로 설정하려 한다면 아래와 같이 지정할 수 있다.

<VirtualHost *:80>
   ServerName goodmankorea.kr
   DocumentRoot /home/pius/ftproot/goodmankorea.kr/www
   ErrorLog /var/log/httpd/goodmankorea_error.log
   CustomLog /var/log/httpd/goodmankorea_access.log combined
</VirtualHost>

첫 번째 줄의 * 대신에 서버의 ip 주소를 기재할 수 있다. 서버에 두 개 이상의 ip가 있다면 도메인마다 서로 다른 ip 주소로 설정할 수 있으며(ip 기반의 가상호스트) ip 주소를 구분하기 위해서 정확히 기재해야겠지만, 서버에 할당된 ip 주소가 단 하나라면 모든 ip 주소를 뜻하는 *를 사용하더라도 결국 ip주소는 하나이기 때문에 결과는 같다.

* 다음의 :80은 예상한 대로 웹서버의 포트이다. 웹서버가 사용하는 포트는 일반적으로 80이며 보안서버를 적용한 https를 사용한다면 443이다.

ServerName 설정하려는 도메인 이름을 기재한다.

DocumentRoot 파일의 저장 경로이다. 경로의 마지막에 /는 사용하지 않는다.

ErrorLog 오류 발생 로그

CustomLog 일반적인 접속 로그

- 로그파일(ErrorLog, CustomLog)이 저장될 위치는 /var/log/httpd의 하위에 도메인별로 서브디렉토리를 만들거나 기타 다른 위치로 설정할 수 있다. (존재하지 않는 디렉토리를 설정한 경우에는 오류가 발생하면서 웹서버의 작동이 중지된다. 로그파일은 자동으로 생성되므로 미리 만들어 놓을 필요는 없다.)

- DocumentRoot 의 경로에 포함된 디렉토리들의 퍼미션은 - owner | group | others 에서- <others>에는 7(r-x)의 권한을 부여해야 한다. 물론 해당 웹사이트의 작동방식에 따라서 하위의 특정 디렉토리는 퍼미션이나 소유자를 변경해야 하는 경우도 있으므로 절대적인 것은 아니다.

- 운영하는 도메인(웹사이트)의 수량만큼 <Virtual> 구문을 사용할 수 있다.

<VirtualHost *:80>
   ServerName goodmankorea.kr
   DocumentRoot /home/phreun/wwwroot/goodmankorea.kr
   ErrorLog ....
   CustomLog ....
</VirtualHost>

<VirtualHost *:80>
   ServerName document.goodmankorea.kr
   DocumentRoot /home/pius/ftproot/goodmankorea.kr/www
   ErrorLog ...
   CustomLog ....
</VirtualHost>

<VirtualHost *:80>
   ServerName lovelyhare.com
   DocumentRoot /home/harelover/www/lovelyhare.com
   ErrorLog ...
   CustomLog ....
</VirtualHost>

 

 - 위에서 예로든 모든 ServerName은 당연히 네임서버에 미리 설정되어 있어야 한다.

728x90
반응형

댓글