반응형
728x90
반응형

Apache2 VHost 설정하기

  • Apache Vhost 설정

Vhost란? Apache2의 Virtual host 기능을 통해서 하나의 아파치 서버에서 독립된 서버 공간을 나누는 작업을 의미한다.

설정 파일 조작

vhost에 필요로 하는, 수정해야하는 설정들은 위 그림에서 처럼 3가지이다.

ports.conf : 각 vhost 마다 사용할 포트 등록.
sites-available, -enabled : vhost에 필요한 설정 파일 등록.

먼저, /etc/apache2 경로의 sites-available/ 디렉토리 내에 필요한 파일을 구비할 것인데, sites-available 디렉토리현재 비활성 중인 사이트들의 설정 파일을 담고 있는 디렉토리이다. 

001-autotag.api 라는 이름으로 가상 환경을 나눈다. 내용은 다음과 같다.

<VirtualHost *:7011> 과 같이 해당 가상 환경에서 사용할 포트를 기재해주고,
ServerName 에는 도메인 주소가 들어간다.
DocumentRoot 의 경우, 렌더링할 웹 문서 파일이 존재하는 Default 경로라고 생각하면 되겠다.
ErrorLog 및 CustomLog 는 해당 vhost에서 발생하는 로그들을 어디에 저장할 것인가를 지정한다.
<Directory ~ > 부분은 해당 vhost에 대한 옵션들이라고 생각하면 된다.

--------------------------------------------------------------------------------------------------------------------------------------------------
[해당 내용]
<VirtualHost *:7011>
ServerName autotag.api
ServerAdmin ysho0707@gmail.com
DocumentRoot /server_app/autotag.api
ErrorLog ${APACHE_LOG_DIR}/django.api/error.log
CustomLog ${APACHE_LOG_DIR}/django.api/access.log combined
          <Directory /server_app/autotag.api>
                    Options All
                    AllowOverride All
                    Require all granted
          </Directory>
</VirtualHost>
# vim: syntax=apache ts=4 sw=4 sts=4 sr noet
--------------------------------------------------------------------------------------------------------------------------------------------------

그리고 다음으로는 sites-enabled 디렉토리를 수정할 것이다. sites-enabled 디렉토리는 현재 활성 중인 사이트의 설정 파일들을 갖는 디렉토리인데, 보통 sites-available 디렉토리에서 심볼릭 링크를 걸어서 설정 파일을 채워넣는 형태로 진행이 된다. 그 부분을 다음에서 확인할 수 있다.

sudo ln -s /etc/apache2/sites-available/001-autotag.api.conf /etc/apache2/sites-enabled/001-autotag.api.conf

위의 명령어를 통해 심볼릭 링크를 건다.

728x90

Port 수정

다음으로는 port를 재설정할 것이다.

위와 같은 경로에 ports.conf 파일이 존재하는데 이 부분에 해당 Virtual Host 공간의 접속 포트를 추가하면 된다. 위 과정 중에서 sites-available 디렉토리 내에 001-autotag.api.conf 의 가장 첫 줄에 포트 번호가 있다. 그 번호를 추가한다.

포트를 추가하면 기본 default로 정했던 7010 포트 뿐만 아니라, autotag.api 이름의 가상 호스트의 포트 또한 접속 요청으로 수용할 수 있다.

Apache2 재시작

아파치를 위와 같이 재시작하고, 접속을 시도해본다.

접속 및 테스트

위와 같이 깔끔하게 접속이 잘 된 모습을 볼 수 있다. 해당 페이지는 “hello” 를 출력하는 페이지 파일을 001-autotag.api.conf 의 DocumentRoot 경로에 기술한 경로에 사전에 집어넣어 렌더링 된 상태이다. 

해당 디렉토리에 아무 것도 넣지 않고 접속하면 아무 것도 출력되지 않으니 확인을 해야한다.
/etc/hosts를 수정한다면 다음과 같이 접속 또한 가능하다.

/etc/hosts 파일을 다음과 같이 수정하게 되면 autotag.api 라는 주소는 앞으로 192.168.0.112로 바꿔서 해석하겠다 라는 의미를 갖는다. 

여기서 중요한 것은 그 말인 즉 슨 내 컴퓨터 내에서만 적용되는 규칙이다. 외부 사람들은 백 날 autotag.api를 친다 하더라도 접속이 되지 않을 것이다.

아래와 같이 접속이 잘 되는 것을 확인할 수 있다.

 

 

 

 

 

 

728x90
반응형
728x90
반응형


데이터를 추가하고, 저장하고 테이블 형태로 열람하고 관리할 수 있는 웹 서비스를 만들어 볼 기회가 주어졌다.

간단하게 만드는 경우인지라 C언어와 비슷하고 익숙한 언어인 PHP를 기반으로 구현하게 되었다. 이에 따라서 필요로하는 환경을 구축하는 내용을 다루는 포스팅이다.

 

Apache2 설치

아파치 설치는 매우 간단하다.

sudo apt install apache2

설치 후, 다음 명령어를 통해 서비스가 켜져 있는지 확인한다.

sudo /etc/init.d/apache2 status

꺼져있다면, 다음 명령어를 실행하여 서비스를 켜주자.

sudo /etc/init.d/apache2 start

localhost 라고 인터넷 주소창에 입력했을 때, 다음과 같이 뜬다면 설치 및 서비스 성공이다.

 

APACHE 포트 변경

이번엔 아파치 서비스의 포트를 변경할 것이다. 아래의 경로(명령어)로 들어가면 포트를 변경할 수 있다.

sudo vim /etc/apache2/ports.conf

기본으로 80 포트로 적용되었지만, 나는 익숙한 포트 번호로 변경하였다.

포트 변경을 원치 않는 경우는 안 바꿔도 된다.

이제 설정이 변경되었으니, 아래와 같이 재시작을 한다.

sudo /etc/init.d/apache2 stop
sudo /etc/init.d/apache2 start
혹은
sudo /etc/init.d/apache2 restart

PHP 설치

서버 사이드 스크립트 언어 설치이다.

다음 명령을 통해서 설치한다.

sudo apt install php php-mysql

설치가 완료되면 Apache2와 연동이 되는지 확인하기 위해서 아래의 과정들을 실행하여 확인해본다.

sudo vim /var/www/html/test.php

위 명령으로 편집기에 들어가서 아래와 같이 입력하고 저장한다.

<?php phpinfo(); ?> 

이러한 화면이 떠야한다. 뜨지 않는 경우 apache2 서비스를 재실행한다. (stop -> start)

이제 이 환경 위에 간단한 웹 서비스를 올리면 되겠다 ㅎㅎ

728x90
반응형

+ Recent posts