[2021.06.16] 인턴 +107 How to Install Apache in Linux(Ubuntu 20.04)
https://injekim97.tistory.com/191
-> 해당 게시글은 Window에서 apache를 설치하는 방법이다.
하지만, 이번 게시글에서 다루게 될 내용은 Linux(Ubuntu20.04)에서, apache 를 설치 및 사용 하는 것이다.
-------------------------------------------------------------------------------------------------------------------
1. 아파치 설치
sudo apt update
sudo apt install apache2
2. 방화벽 설정
sudo ufw app list
* Apache
-> 포트 80 open
* Apache Full
-> 포트 80,443(TLS / SSL 암호화 트래픽) open
* Apache Secure
-> 포트 443 open
sudo ufw allow 'Apache'
-> 포트 80에서만 트래픽을 허용
sudo ufw status
-> 위의 이미지는 제대로 기능이 작동하지 않음
-
* status:inactive 일 때 해결 방법
sudo ufw enable
sudo ufw default deny
sudo iptables -L
-> 일부부만 캡처하였음
이제 정상적으로 작동이 된다.
3. 웹 서버 확인
sudo systemctl status apache2
curl -4 icanhazip.com
-> 해당 출력 값을 web에 치면 apache로 접속할 수 있음
4. 아파치 프로세스 관리
sudo systemctl enable apache2
-> 기본적으로 Apache는 서버가 부팅 될 때 자동으로 시작 설정 O
sudo systemctl disable apache2
-> 기본적으로 Apache는 서버가 부팅 될 때 자동으로 시작 설정 X
5. 가상 호스트 설정
sudo mkdir /var/www/your_domain
sudo chown -R injekim97:injekim97 /var/www/your_domain
sudo chmod -R 755 /var/www/your_domain
sudo nano /var/www/your_domain/index.html
/var/www/your_domain/index.html
<html>
<head>
<title>Welcome to Your_domain!</title>
</head>
<body>
<h1>Success! The your_domain virtual host is working!</h1>
</body>
</html>
sudo nano /etc/apache2/sites-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>
-> your_domain(serverName, serverAlias, DocumentRoot) 수정해줘야함.
sudo a2ensite your_domain.conf
-> 위에서 만든 domain.conf 활성화
sudo a2dissite 000-default.conf
sudo a2dissite *-default.conf
-> apache에 설치되었던 conf 파일 비활성화 (둘중 하나 명령어 사용)
sudo apache2ctl configtest
-> conf 파일 오류 테스트 Check
sudo systemctl restart apache2
-> apache 재시작
--------------------------------------------------------------------------------------------
아파치 구성 디렉토리
* /etc/apache2
-> Apache 구성 디렉토리
* /etc/apache2/apache2.conf
-> 기본 Apache 구성 파일, Apache 전역 구성을 변경하기 위해 수정 가능
* /etc/apache2/ports.conf
-> 이 파일은 Apache가 수신 할 포트를 지정
-> 기본적으로 Apache는 포트 80에서 수신 대기하고, SSL 기능을 제공하는 모듈이 활성화 된 경우 추가로 포트 443 추가
* /etc/apache2/sites-available/
-> 사이트 별 가상 호스트를 저장할 수있는 디렉터리
-> Apache는 이 디렉토리에 링크되지 않은 경우 이 디렉토리에있는 구성 파일을 사용X
a2ensite
-> 명령어를 사용하여 다른 디렉터리에 연결하여 활성화
* /etc/apache2/sites-enabled/
-> 활성화 된 사이트 별 가상 호스트가 저장되는 디렉터리
* /etc/apache2/conf-available/, /etc/apache2/conf-enabled/
-> 위의 디렉토리들은 sites-available및 sites-enabled 디렉토리 와 동일한 관계를 갖지만, 가상 호스트에 속하지 않는 구성을 저장하는 데 사용됨
* /etc/apache2/mods-available/, /etc/apache2/mods-enabled/
-> 위의 디렉토리들은 각각 사용 가능한 모듈과 활성화 된 모듈을 포함
★★★★★ 서버 로그 ★★★★★
* /var/log/apache2/access.log
-> 웹 서버에 대한 모든 요청이 로그 파일에 기록됨
* /var/log/apache2/error.log
-> 모든 오류가 해당 디렉터리 파일에 기록
댓글