운영체제/Ubuntu

[Ubuntu] 우분투에서 아파치 설치하기

이 현호 2023. 2. 27. 16:49

1. 아파치 설치하기


1-1. Apache는 Ubuntu 저장소에서 사용할 수 있으므로 기존 패키지 관리 도구를 사용하여 설치할 수 있다.

 

sudo apt-get update

 

1-2. Apache2 패키지를 설치한다.

 

sudo apt install apache2

 

2. 방화벽 설정


Apache를 테스트하기 전에 기본 웹 포트에 대한 외부 액세스를 허용하도록 방화벽 설정을 수정해야 한다.

 

설치하는 동안 Apache는 방화벽을 통해 Apache에 대한 액세스를 활성화하거나 비활성화하는 데 사용할 수 있는 몇 가지 애플리케이션 프로필을 제공하기 위해 UFW에 자체 등록한다.

 

2.1 UFW 명령어로 list 확인

 

sudo ufw app list

 

애플리케이션 프로필 목록 확인

 

Output

 

Available applications:
	Apache
    	Apache Full
        Apache Secure
    	OpenSSH

 

출력에 표시된 대로 Apache에는 세 가지 프로필을 사용할 수 있다.

 

  • Apache: 이 프로필은 80 포트만 오픈
  • Apache Full: 이 프로필은 포트 80 (일반, 암호화되지 않은 웹 트래픽)과 포트 443(TLS / SSL 암호화 트래픽) 오픈
  • Apache Secure: 이 프로필은 포트 443(TLS / SSL 암호화 트래픽) 오픈

 

2.2 아직 서버에 SSL(443 포트)를 구성하지 않았기 때문에 포트 80 포트 트래픽만 허용하면 된다.

 

sudo ufw allow 'Apache'

 

2.3 다음을 입력하여 변경 사항을 확인할 수 있다.

 

sudo ufw status

 

 

Apache 웹 서버에 대한 엑세스를 허용하도록 활성화 완료.

 

3. 웹 서버 확인


3.1 서비스가 제대로 실행중인지 확인

 

sudo systemctl status apache2

 

 

서비스가 성공적으로 시작되었다.

 

이제 아파치 페이지를 호출해 보겠다.

 

 

3.2 서버의 IP 확인

 

ifconfig

 

 

3.3 브라우저에서 서버의 IP를 아래와 같이 입력한다.

 

http://server_ip

 

 
자신의 서버 IP를 입력한 뒤 아래의 웹 페이지가 표시되면 정상적으로 설치된 것이다.
 

 

 

4. Apache 프로세스 관리하기


4.1 웹 서버 중지

 

sudo systemctl stop apache2

 

4.2 웹 서버 시작

 

sudo systemctl start apache2

 

4.3 웹 서버 재시작

 

sudo systemctl restart apache2

 

4.4 웹 서버를 중지하지않고 환경 설정을 적용

 

sudo systemctl reload apache2

 

4.5 서버 부팅 시 자동으로 실행되지 않게 설정

 

sudo systemctl disable apache2

 

4.6 서버 부팅 apache 서버가 자동으로 실행되게 설정

 

sudo systemctl enable apache2

 

 

5. 가상 호스트 설정 예시 (실행 안되지만 선택 사항)


Apache에는 기본적으로 /var/www/html 디렉토리에서 문서를 제공하도록 구성된 하나의 서버 블록이 기본적으로 활성화되어 있다.

 

5-1. 먼저 가상 호스트 파일을 생성해야 한다.

"/etc/apache2/sites-available/000-default.conf" 기본 구성 파일을 수정하는 대신

"/etc/apache2/sites-available/your_domain.conf" 형태로 신규 파일을 만들어 보겠다.

 

 

vi /etc/apache2-site-available/your_domain.conf

 

 

서비스할 홈 디렉토리 및 서비스 도메인을 입력한다.

<VirtualHost *:80>
    ServerAdmin webmaster@localhost
    ServerName your_domain
    ServerAlias www.your_domain
    DocumentRoot /var/www/your_domain
    ErrorLog ${APACHE_LOG_DIR}/error.log
    CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>

 

a2ensite로 추가된 환경파일을 활성화 해 보겠다.

 

sudo a2ensite your_domain.conf

 

 

기본 사이트 비활성화 000-default.conf

 

sudo a2dissite 000-default.conf

 

추가된 환경 설정 파일 오류 테스트

 

sudo apache2ctl configtest

 

아래와 같이 출력되었다면 정상이다.

 

Syntax OK

 

추가된 가상 호스트(신규 도메인)를 실행 하려면 Apache를 다시 시작해야 한다.

 

sudo systemctl restart apache2

 

반응형