SW/리눅스

Linux : Ubuntu 20.04 : Apache 설치 방법, 예제, 명령어

얇은생각 2022. 9. 11. 07:30
반응형

Apache는 세계에서 가장 인기 있는 웹 서버 중 하나입니다. 인터넷 웹 사이트의 많은 부분을 지원하는 오픈 소스 및 크로스 플랫폼 HTTP 서버입니다. Apache는 추가 모듈을 통해 확장할 수 있는 많은 강력한 기능을 제공합니다.

이 튜토리얼에서는 Ubuntu 20.04에 Apache 웹 서버를 설치하고 관리하는 방법을 설명합니다.

 

 

 

필수 구성 요소

자습서를 시작하기 전에 sudo 권한을 가진 사용자로 로그인했는지 확인합니다.

 

 

 

Apache를 설치

Apache는 기본 Ubuntu 리포지토리에 포함되어 있습니다.

설치는 꽤 간단합니다. Ubuntu 및 Debian 시스템에서는 Apache 패키지 및 서비스를 apache2라고 합니다.

다음 명령을 실행하여 패키지 인덱스를 업데이트하고 Apache를 설치하십시오.

sudo apt update
sudo apt install apache2

 

 

설치 프로세스가 완료되면 Apache 서비스가 자동으로 시작됩니다.

다음을 입력하여 Apache가 실행 중인지 확인할 수 있습니다.

sudo systemctl status apache2

# ● apache2.service - The Apache HTTP Server
#      Loaded: loaded (/lib/systemd/system/apache2.service; enabled; vendor preset: enabled)
#      Active: active (running) since Sat 2020-05-09 19:28:40 UTC; 36min ago
# ...

 

 

시스템 부팅 시 서비스가 실행 중이고 시작 가능하도록 설정되었음을 출력에 알려줘야 합니다.

 Ubuntu 20.04 서버에 Apache를 성공적으로 설치했으므로 사용할 수 있습니다.

 

 

 

HTTP 및 HTTP 포트 열기

Apache는 포트 80(HTTP) 및 443(HTTPS)에서 수신 대기합니다. 웹 서버가 인터넷에서 액세스할 수 있도록 방화벽에서 이러한 포트를 열어야 합니다.

UFW를 사용한다고 가정하면, 두 포트에 대한 규칙이 포함된 'Apache Full' 프로파일을 활성화하여 이 작업을 수행할 수 있습니다.

sudo ufw allow 'Apache Full'

 

 

변경 사항을 확인합니다.

sudo ufw status

# Status: active
# 
# To                         Action      From
# --                         ------      ----
# 22/tcp                     ALLOW       Anywhere
# Apache Full                ALLOW       Anywhere
# 22/tcp (v6)                ALLOW       Anywhere (v6)
# Apache Full (v6)           ALLOW       Anywhere (v6)

 

 

 

Apache 설치를 확인

모든 것이 제대로 작동하는지 확인하려면 브라우저를 열고 서버 IP 주소 http://YOUR_IP_OR_DOMAIN/에서 아래와 같이 기본 Ubuntu 20.04 Apache 시작 페이지가 나타납니다.

Linux : Ubuntu 20.04 : Apache 설치 방법, 예제, 명령어

 

 

이 페이지에는 Apache 구성 파일, 도우미 스크립트 및 디렉터리 위치에 대한 몇 가지 기본 정보가 포함되어 있습니다.

 

 

 

가상 호스트를 설정

가상 호스트는 단일 서버에서 둘 이상의 웹 사이트를 실행할 수 있는 Apache 구성 지시문입니다. 일반적으로 가상 호스트는 하나의 웹 사이트를 설명합니다.

Apache는 기본적으로 하나의 가상 호스트를 사용하도록 설정되어 제공됩니다. 서버 IP 주소를 가리키는 모든 도메인이 기본 가상 호스트와 일치합니다. 단일 웹 사이트를 호스팅하는 경우 /var/ww/html에 해당 콘텐츠를 업로드하고 /etc/apache2/sites-enabled/000-default.conf 파일에 있는 가상 호스트 구성을 편집할 수 있습니다.

둘 이상의 웹 사이트를 호스팅하려면 각 사이트에 대해 가상 호스트 구성을 만들어야 합니다. 이 섹션에서는 "example.com"이라는 도메인에 대한 웹 사이트를 설정하겠습니다. "example.com"을 도메인 이름으로 바꿔야 합니다.

첫 번째 단계는 요청에 따라 도메인 이름의 웹 사이트 파일이 저장되고 제공될 문서 루트 디렉토리를 작성하는 것입니다. 다음 명령을 실행하여 디렉토리를 생성합니다.

sudo mkdir -p /var/www/example.com

 

 

테스트를 위해 도메인 문서 루트 디렉토리 내에 index.html 파일을 작성합니다.

# /var/www/example.com/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>

 

 

파일을 저장한 후 닫으십시오.

사용 권한 문제를 방지하려면 도메인 문서 루트 디렉토리의 소유권을 apache 사용자(www-data)로 변경하십시오.

sudo chown -R www-data: /var/www/example.com

 

 

다음 단계는 "example.com" 도메인에 대한 가상 호스트 구성을 만드는 것입니다. 각 vhost 구성을 별도의 파일에 저장하는 것이 가장 좋습니다.

Apache vhosts 파일은 /etc/apache2/sites 사용 가능한 디렉토리에 저장됩니다. 표준 명명 규칙은 도메인에 따라 파일 이름을 지정하는 것입니다.

텍스트 편집기를 열고 다음 파일을 만듭니다.

# /etc/apache2/sites-available/example.com.conf

<VirtualHost *:80>
    ServerName example.com
    ServerAlias www.example.com
    ServerAdmin webmaster@example.com
    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>

 

 

/etc/apache2/sites 사용 가능 디렉터리에 연결된 구성 파일이 아니면 Apache2/sites 사용 가능 디렉터리에 있는 구성 파일을 읽지 않습니다.

가상 호스트 구성을 활성화하려면 a2ensite 유틸리티를 사용하여 심볼 링크를 생성합니다.

sudo a2ensite example.com

 

 

다음과 같은 구문 오류가 있는지 구성을 테스트합니다.

sudo apachectl configtest

# Syntax OK

 

 

오류가 없으면 다음 출력이 표시됩니다.

Apache 서비스를 재시작하여 변경 내용을 적용합니다.

sudo systemctl restart apache2

 

 

마지막으로 모든 것이 예상대로 작동하는지 확인하려면 브라우저에서 http://example.com을 열면 다음과 같은 내용이 표시됩니다.

Linux : Ubuntu 20.04 : Apache 설치 방법, 예제, 명령어 2

 

 

Ubuntu 20.04에 Apache를 설치하는 방법을 보여드렸습니다. 이제 애플리케이션 배포를 시작하고 Apache를 웹 또는 프록시 서버로 사용할 준비가 되었습니다.

반응형