라즈베리파이4 아파치(Apache) 가상호스트(VirtualHost) 사용하기 (홈페이지 여러개 운영하기)
먼저 아파치를 설치하는 방법에 대해서는 이전에 포스팅 했던 자료를 링크해드립니다. 참고하셔서 아파치를 먼저 설치하시고 오셔야 됩니다.
reddb.tistory.com/94?category=914227
아파치가 설치됐다면 아래 단계로 진행하여 가상호스트를 만들고 홈페이지를 추가할 수 있습니다.
- /var/www/ 폴더에 새로운 홈페이지 폴더 만들기 (폴더 이름은 원하는걸로)
- /etc/apache2/sites-available/ 폴더에 가상호스트 conf 파일 만들기
- /etc/apache2/sites-enabled/ 폴더에 2번에서 만든 conf파일 심볼릭 링크 만들기
- /etc/apache2/ports.conf 파일을 vi로 수정하여 Listen 숫자(가상호스트 포트) 추가하기
- /var/www/새로만든홈페이지폴더/ 에 홈페이지파일 넣고 사용자권한을 www-data로 변경하기
- 아파치 재실행하고 브라우저로 접속해서 홈페이지 정상적으로 뜨는지 확인하기
아파치(Apache)를 설치하시고 나면 /var/www/ 경로에 html이라는 폴더가 생성됩니다. 이 폴더가 브라우저로 라즈베리파이IP에 접근 시 자동으로 접속해주는 80포트로 설정된 기본 홈페이지 폴더입니다.
html 폴더 말고 추가하는 홈페이지가 사용할 폴더를 /var/www/ 경로에 mkdir로 만들어 줍니다.
저는 test라는 폴더로 만들어 보겠습니다.
$ sudo mkdir test
다음은 /etc/apache2/sites-available/ 폴더로 이동하여 새로만들 가상호스트의 conf 파일을 만듭니다.
저는 001-test.conf로 파일을 만들어 보겠습니다. 가상호스트 포트는 8080으로 만들겠습니다.
$ cd /etc/apache2/sites-available/
$ sudo vi 001-test.conf
<VirtualHost *:8080>
# (주석) 80은 기본포트라 사용하면 안되고, 저는 8080으로 만들었습니다.
ServerName www.test.com
# (주석) 서버이름입니다.
ServerAdmin webmaster@localhost
# (주석) 서버Admin입니다.
DocumentRoot /var/www/test
#(주석) 8080포트로 접근할 경우 사용하게될 홈페이지 폴더 위치입니다. 저는 test로 만들었습니다.
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>
다음은 /etc/apache2/sites-enabled/ 폴더에 방금 위에서 만든 001-test.conf 가상호스트 conf 파일을 심볼릭 링크로 만들어 줍니다.
$ cd /etc/apache2/sites-enabled/
$ sudo ln -s ../sites-available/001-test.conf ./
다음은 /etc/apache2/ports.conf 파일을 수정해야 합니다. vi로 ports.conf 파일을 열어보면 기본 80 포트가 Listen되어 있습니다. 바로 밑에 가상호스트에서 만든 8080포트를 Listen 8080으로 추가합니다.
$ cd /etc/apache2/
$ sudo vi ports.conf
다음은 홈페이지 파일을 새로만든 홈페이지폴더(저는 /var/www/test/ 폴더) 에 넣어야 합니다.
저는 따로 만든 홈페이지가 없어 phpinfo 페이지를 만들어 정상 작동하는지 테스트 하겠습니다.
(php를 사용하기 위해서는 설치를 먼저해야합니다. php설치 방법은 아래 링크로 대신합니다.)
reddb.tistory.com/95?category=914227
$ cd /var/www/test/
$ sudo vi index.php
<?php phpinfo(); ?>
// php.index 파일에 vi로 넣어야 할 코드
다음은 /var/www/test/ 폴더의 권한을 www-data로 변경해야 합니다. (명령어 마지막에 . 입력해야함)
$ sudo chown -R www-data: .
마지막으로 아파치를 재기동해줍니다.
$ sudo systemctl restart apache2.service
이제 라즈베리파이에서 크로미움 브라우저를 열어 8080포트로 접속해 봅니다.
주소창: localhost:8080
기존에 홈페이지를 운영하고 계시다면 외부에서 라즈베리파에 설치된 홈페이지로 접근을 열어주는 방법을 알고 계실거라 생각합니다. (이 포스팅은 추가로 홈페이지를 만드는거니까요)
혹시나 모르시는 분을 위해 이전에 외부에서 라즈베리파이에 만들어진 홈페이지로 접속할 수 있게 하는 방법을 포스팅한 자료를 링크합니다. 참고하시기 바랍니다.
reddb.tistory.com/99?category=914227
라즈베리파이 전체보기
'라즈베리파이' 카테고리의 다른 글
라즈베리파이(Raspberry Pi) 400 컴팩트 키보드에 내장된 제품 발매 소식 (0) | 2020.11.05 |
---|---|
라즈베리파이4 비주얼스튜디오 코드(Visual Studio Code) 연동 개발환경 구축하기 (0) | 2020.10.03 |
라즈베리파이4 node.js 최신버전 설치하기 (4) | 2020.10.03 |