Debian 10에서 Apache 가상 호스트를 설정하는 방법

Debian 10에서 Apache 가상 호스트를 설정하는 방법

2022-05-31 last update

9 minutes reading apache debian
Apache 가상 호스트를 사용하면 한 기기에서 여러 웹 사이트를 실행할 수 있습니다.가상 호스트를 사용하면 사이트 문서 루트 디렉터리 (사이트 파일이 포함된 디렉터리) 를 지정하고 사이트마다 별도의 보안 정책을 만들며 서로 다른 SSL 인증서를 사용할 수 있습니다.이 문서에서는 Debian 10 서버에 Apache 가상 호스트를 설정하는 방법을 설명합니다.

선결 조건

본 강좌를 계속하기 전에
  • 공용 서버 IP에 대한 도메인 이름을 충족해야 합니다.
  • Apache installed on your CentOS
    계통
  • root 또는 user with sudo privileges로 로그인
    .
  • 디렉토리 구조 만들기

    문서 루트 디렉터리는 도메인 이름의 사이트 파일을 저장하고 요청에 응답하는 디렉터리입니다.문서 루트 디렉토리를 원하는 위치로 설정할 수 있습니다.다음 디렉토리 구조를 사용합니다.
    /var/www/
    ├── domain1.com
    │   └── public_html
    ├── domain2.com
    │   └── public_html
    ├── domain3.com
    │   └── public_html
    
    서버에서 관리되는 각 도메인의 문서 루트는 /var/www/<domain_name>/public_html 로 설정됩니다.먼저 첫 번째 도메인에 대한 문서 루트 디렉터리를 만듭니다. example.com:
    sudo mkdir -p /var/www/example.com/public_html
    브라우저에서 도메인에 액세스하면 표시되는 도메인 문서 루트 디렉터리에 index.html 파일도 만듭니다.좋아하는 텍스트 편집기를 열고 새 파일을 만들고 다음 내용을 붙여넣습니다:/var/www/example.com/public_html/index.html
    <!DOCTYPE html>
    <html lang="en" dir="ltr">
      <head>
        <meta charset="utf-8">
        <title>Welcome to example.com</title>
      </head>
      <body>
        <h1>Success! example.com home page!</h1>
      </body>
    </html>
    
    은 상기 명령은sudo 사용자로 실행되기 때문에 새로 만든 파일과 디렉터리는 루트에 귀속됩니다.모든 권한 문제를 피하기 위해 도메인 문서 루트 디렉터리와 디렉터리에 있는 모든 파일의 소유권을 데비안 시스템의 아파치 사용자(www-data로 변경합니다.
    sudo chown -R www-data: /var/www/example.com

    가상 호스트 만들기

    ,apache 가상 호스트 프로필은 /etc/apache2/sites-available 디렉터리에 있으며, /etc/apache2/sites-enabled 디렉터리를 가리키는 기호 링크를 만들어서 사용할 수 있습니다. 이 디렉터리는 시작하는 동안apache가 읽을 수 있습니다.열기text editor
    다음 기본 가상 호스트 프로필을 만듭니다./etc/apache 2/sitesavailable/example.일반 도메인 이름 형식입니다.ff
    <VirtualHost *:80>
        ServerName example.com
        ServerAlias www.example.com
        ServerAdmin [email protected]
        DocumentRoot /var/www/example.com/public_html
    
        <Directory /var/www/example.com/public_html>
            Options -Indexes +FollowSymLinks
            AllowOverride All
        </Directory>
    
        ErrorLog ${APACHE_LOG_DIR}/example.com-error.log
        CustomLog ${APACHE_LOG_DIR}/example.com-access.log combined
    </VirtualHost>
    
  • ServerName: 이 가상 호스트와 일치하는 도메인을 설정해야 합니다.이것은 아마 너의 도메인 이름일 것이다.
  • ServerAlias: 이 가상 호스트와 일치해야 하는 다른 모든 도메인이나 하위 도메인, 일반적으로www 하위 도메인입니다.
  • DocumentRoot: 아파치가 도메인 파일에 대한 서비스를 제공하는 디렉토리입니다.
  • Options : This directive
    특정 디렉토리에서 사용할 수 있는 서버 기능을 제어합니다.
  • -Indexes: 디렉터리 목록을 막습니다.
  • FollowSymLinks: 이 옵션을 사용하면 아파치는 기호 링크를 따릅니다.
  • AllowOverride: 파일에 설명된 구성 명령을 덮어쓸 수 있는 명령을 지정합니다.
  • .htaccess,ErrorLog: 로그 파일의 위치를 지정합니다.
  • 필요한 경우 파일을 편집하여 저장합니다.구성 파일의 이름을 지정할 수 있습니다.Best Practice는 도메인 이름을 가상 호스트 구성 파일의 이름으로 사용하는 것입니다.새 가상 호스트 파일을 사용하려면 CustomLog 도움말 프로그램 스크립트를 사용하십시오. 이 스크립트는 가상 호스트 파일에서 a2ensite 디렉터리에 대한 기호 링크를 만듭니다.
    sudo a2ensite example.com
    
    다른 옵션은 수동 create a symlink
    다음과 같습니다.
    sudo ln -s /etc/apache2/sites-available/example.com.conf /etc/apache2/sites-enabled/
    설정을 사용하면 문법이 정확한지 테스트합니다.
    sudo apachectl configtest
    오류가 없으면 다음 출력을 볼 수 있습니다.
    Syntax OK
    
    변경 사항을 적용하기 위해 sites-enabled 서비스를 다시 시작합니다. (adsbygoogle = window.adsbygoogle | | [])푸시({});
    sudo systemctl restart apache2
    원하는 대로 작동하는지 확인하려면 좋아하는 브라우저에서 apache2 를 열면 다음과 같은 내용을 볼 수 있습니다.

    결론

    이 강좌에서 Debian 10 Buster에서 Apache 가상 호스트 설정을 만드는 방법을 보여 드리겠습니다.위의 단계를 반복하여 모든 도메인에 대해 다른 가상 호스트를 생성할 수 있습니다.SSL 인증서로 사이트를 보호하려면 무료 Letsencrypt SSL certificate 를 생성하고 설치할 수 있습니다
    .질문이 있으시면 언제든지 논평을 주십시오.
    이 글은 How to Install LAMP Stack on Debian 10 시리즈의 일부분이다.이 시리즈의 추가 게시물: •
    How to Install MariaDB on Debian 102019년 7월 11일
    How to Install Apache Web Server on Debian 10 Linux2019년 7월 27일
    How to Install PHP on Debian 10 Linux2019년 11월 17일 •
    Secure Apache with Let's Encrypt on Debian 10 2020년 1월 3일
    Debian에서 Apache 가상 호스트를 설정하는 방법 2020년 3월 10일