Ubuntu에서 Apache를 설치하는 방법은 다음과 같습니다. Apache는 널리 사용되는 웹 서버 소프트웨어로, Ubuntu에서 쉽게 설치하고 설정할 수 있습니다.
Ubuntu에서 Apache 설치 및 설정하기
1. Apache란?
Apache는 전 세계에서 가장 많이 사용되는 웹 서버 소프트웨어 중 하나입니다. 웹 사이트를 호스팅하고, 사용자의 요청에 따라 웹 페이지를 제공하는 역할을 합니다.
2. Apache 설치하기
(1) 패키지 목록 업데이트
설치 전에 Ubuntu의 패키지 목록을 최신 상태로 업데이트합니다.
터미널에서 다음 명령어를 입력하세요:
sudo apt update
(2) Apache 설치
sudo apt install apache2
- 설치 중에 "Y"를 입력하여 계속 진행합니다.
3. Apache 서비스 관리
(1) Apache 상태 확인
Apache가 설치되면 자동으로 실행됩니다. 상태를 확인하려면:
sudo systemctl status apache2
- 실행 중이면 초록색으로 "active (running)"이라고 표시됩니다.
(2) Apache 시작/중지/재시작
- 시작: Apache를 시작하려면:
sudo systemctl start apache2
- 중지: Apache를 중지하려면:
sudo systemctl stop apache2
- 재시작: 설정 파일을 변경한 후 재시작하려면:
sudo systemctl restart apache2
(3) 부팅 시 자동 시작
Apache가 시스템 부팅 시 자동으로 시작되도록 설정하려면:
sudo systemctl enable apache2
4. 방화벽 설정 (UFW 사용 시)
Ubuntu의 기본 방화벽인 UFW를 사용 중이라면, 웹 트래픽(HTTP/HTTPS)을 허용해야 합니다.
(1) HTTP/HTTPS 허용
다음 명령어로 HTTP(80)와 HTTPS(443) 포트를 열어줍니다:
sudo ufw allow 'Apache Full'
(2) 방화벽 상태 확인
방화벽 규칙이 적용되었는지 확인합니다:
sudo ufw status
- 출력 결과에 "Apache Full"이 허용된 것으로 표시되면 성공입니다.
5. Apache 테스트
(1) 웹 브라우저로 확인
웹 브라우저를 열고 서버의 IP 주소를 입력합니다. 예를 들어:
http://서버_IP_주소
- Apache가 정상적으로 실행 중이면 "Apache2 Ubuntu Default Page"가 표시됩니다.
(2) 터미널로 확인
터미널에서 다음 명령어를 입력해도 확인할 수 있습니다:
curl http://localhost
- HTML 코드가 출력되면 Apache가 잘 동작하고 있는 것입니다.
6. Apache 설정 파일
Apache의 설정 파일은 /etc/apache2/ 디렉토리에 있습니다. 주요 파일 및 디렉토리는 다음과 같습니다:
- apache2.conf: Apache의 주요 설정 파일.
- sites-available/: 사용 가능한 사이트 설정 파일이 저장된 곳.
- sites-enabled/: 실제로 활성화된 사이트 설정 파일이 저장된 곳.
- mods-available/: 사용 가능한 모듈 설정 파일.
- mods-enabled/: 활성화된 모듈 설정 파일.
- logs/: 로그 파일이 저장된 곳 (access.log, error.log).
7. 가상 호스트 설정 (여러 웹 사이트 호스팅)
Apache를 사용해 여러 웹 사이트를 호스팅하려면 **가상 호스트(Virtual Host)**를 설정해야 합니다.
(1) 사이트 디렉토리 생성
예를 들어, example.com 사이트를 호스팅하려면:
sudo mkdir -p /var/www/example.com
(2) 샘플 HTML 파일 생성
사이트 디렉토리에 샘플 HTML 파일을 만듭니다:
sudo nano /var/www/example.com/index.html
다음 내용을 입력하고 저장합니다 (Ctrl + X → Y → Enter):
<!DOCTYPE html>
<html>
<head>
<title>Welcome to Example.com!</title>
</head>
<body>
<h1>Hello, World!</h1>
<p>This is the example.com website.</p>
</body>
</html>
(3) 가상 호스트 설정 파일 생성
sites-available 디렉토리에 새로운 설정 파일을 만듭니다:
sudo nano /etc/apache2/sites-available/example.com.conf
다음 내용을 입력합니다:
<VirtualHost *:80>
ServerAdmin webmaster@example.com
ServerName example.com
ServerAlias www.example.com
DocumentRoot /var/www/example.com
<Directory /var/www/example.com>
Options Indexes FollowSymLinks
AllowOverride All
Require all granted
</Directory>
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>
(4) 사이트 활성화
설정 파일을 활성화합니다:
sudo a2ensite example.com.conf
(5) Apache 재시작
변경 사항을 적용하기 위해 Apache를 재시작합니다:
sudo systemctl restart apache2
(6) 호스트 파일 수정 (로컬 테스트용)
로컬에서 테스트하려면 /etc/hosts 파일을 수정합니다:
sudo nano /etc/hosts
다음 줄을 추가합니다:
127.0.0.1 example.com
(7) 브라우저에서 확인
브라우저에서 http://example.com으로 접속해 "Hello, World!" 메시지가 표시되는지 확인합니다.
8. 로그 확인
Apache의 로그는 /var/log/apache2/ 디렉토리에 저장됩니다.
- 접속 로그: access.log
- 오류 로그: error.log
로그를 실시간으로 확인하려면:
sudo tail -f /var/log/apache2/access.log
sudo tail -f /var/log/apache2/error.log
9. 추가 팁
모듈 관리:
모듈 활성화: sudo a2enmod 모듈_이름
모듈 비활성화: sudo a2dismod 모듈_이름
예: rewrite 모듈 활성화:
sudo a2enmod rewrite
sudo systemctl restart apache2
HTTPS 설정:
Let's Encrypt를 사용해 무료 SSL 인증서를 발급받고 HTTPS를 설정할 수 있습니다.
'운영체제 (OS) > 리눅스 (Linux)' 카테고리의 다른 글
[PHP 설정 가이드] PHP-FPM 완벽 설정 방법 (0) | 2025.01.28 |
---|---|
우분투에서 MySQL/MariaDB 완벽 설치 및 설정 가이드 (1) | 2025.01.28 |
우분투 PHP 설치 및 Nginx 연동 가이드 (1) | 2025.01.27 |
NGINX로 멀티 도메인 호스팅하기 (0) | 2025.01.27 |
우분투에서 Nginx를 설치하는 방법 (0) | 2025.01.27 |