본문 바로가기
리눅스

아파치 가상 호스트 VirtualHost conf 설정 정리

by bzerome240 2023. 3. 5.


가상 호스트


: 아파치에서 접속하는 주소에 따라 폴더를 다르게 지정할 수 있는 기능 
한 장비에서 여러개의 도메인을 지정할 수 있다.


아파치 가상 호스트 설정 방법


보통 ~.conf 로 생성하고 httpd.conf 파일에서 해당 파일을 include 한다. 
수정 완료 후 서버 재시작해야한다.

 


 

실제 회사에서 사용하는 속성들을 예제에 작성하였다.

그동안 모르고 필요한 부분만 수정했는데, 정리하면서 일부 속성들의 의미를 알게 되었다.

<VirtualHost *:443>
    ServerName     www.dev.com
    ServerAdmin    dev@dev.com
    DocumentRoot   "/k3/www"
    ServerAlias    dev.com dev2.com
    CustomLog      logs/access_log 
    ErrorLog       logs/error_log

    SSLEngine on
    SSLCertificateFile /k3/ssl/dev.com/cert.pem
    SSLCertificateKeyFile /k3/ssl/dev.com/key.pem
    SSLCACertificateFile /k3/ssl/dev.com/wild-chain.pem

    ErrorDocument 404 /not_found.htm
    ErrorDocument 500 /not_found.htm

    <Directory "/k3/www/test">
        Order deny,allow
        Deny from all
    </Directory>
</VirtualHost>


conf 속성

  • <VirtualHost *:?> : ?는 포트 번호 설정
  • DocumentRoot : 지정할 폴더의 경로
    • * 마지막에 / 슬래시를 넣으면 안된다.
  • ServerName : 가상 호스트 도메인 (주 도메인)
  • ServerAlias : 가상 호스트 도메인이 아니어도 같이 바라보도록 하는 별칭 도메인 (부 도메인)
    • ex) dev2.com 로 들어와도 www.dev.com 으로 접속한거와 동일하게 제공
  • ErrorLog : error 로그 경로
  • CustomLog : access 로그 경로
  • include {~ .conf} : 특정 conf 파일을 include 한다.
  • ErrorDocument {응답코드} {리다이렉트파일} : 에러 발생 시 리다이렉트 화면을 보여준다.
  • ServerAdmin : 서버 오류 발생 시 클라이언트로 전송하는 오류 메세지에 들어갈 이메일 주소
  • <Directory "~"> : 특정 디렉토리에 포함된 파일에 대한 허용, 거부 지정
    • order: 접근을 통제하는 순서 ex) deny 부터 검사하고 allow 검사

  • SSLEngine on : SSL 환경설정
  • SSLCertificateFile : 인증서 crt 설정
  • SSLCertificateKeyFile : 개인키 key 설정
  • SSLCACertificateFile  : 체인 chainca 설정

 



 

 

728x90
반응형

댓글