상세 컨텐츠

본문 제목

[R.Pi + Linux] Raspberry Pi3 WEB(apache) Server 만들기

개발/R.Pi3 + Linux

by 똘똘이박사 2016. 12. 19. 18:47

본문

· 최초작성 : 2016. 12. 19.

최종수정 : 2016. 12. 20.

· 작성/수정내용 :

  - 홈페이지 만들어 구동하기




 

 테스트 설정

 - Raspberry Pi3

 - Raspbian Release date : 2016.11.25




# 나만의 홈페이지 만들기


이제 드디어 서버를 구축해보려고 합니다.

지난 포스팅에서 Apache와 Tomcat는 설치해 보고 기본 페이지가 뜨는것 까지 해보았으니

이번 포스팅에서는 가볍게 홈페이지 첫 화면을 만들어서 접속시 보이게 하려고 합니다.




홈페이지 첫 화면 만들기


이제 제 첫 홈페이지의 첫 화면을 만들어 보려고 합니다.

막상 만들려고 하니 뭘 만들어야 할지 모르겠네요

그래서 저도 Hello 페이지를 만들어 보기로 했습니다.


메모장이나 에디터 프로그램을 열어

아래와 같이 코딩을 하고 index.html 이라고 파일을 저장합니다.




<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8" />
    </head>
    <body>
        <h1> Hello, Raspberry Pi Homepage!</h1>
    </body>
</html>


그리고 이 파일을 더블클릭하여 로컬에서 실행시켜 보면 아래와 같은 화면을 보실 수 있습니다.


<크롬 브라우저를 사용한 화면>



웹페이지의 기본 언어는 HTML 입니다.

이 포스팅에서는 HTML 문법 등에 대해서는 다루지 않습니다.



위와 같이 페이지가 정상적으로 보여진다면,

만들어진 html 파일을 FTP를 이용하여

라즈베리파이에 업로드 합니다.


FTP가 설치되어 있지 않으신 분들은 아래 FTP 설치 포스팅을 참고해 주세요~



[R.Pi + Linux] Raspberry Pi3 에 FTP(vsftpd) 서버 설치하기



전 /home 아래 www 라는 디렉토리를 만들어 이 곳에 파일을 올리려고 합니다.


잠깐!!! 


지난 FTP 설치 포스팅에서 분명 보안상의 이유로 

홈디렉토리(/home/pi) 이외에 아무곳으로 접속 할 수 없도록 셋팅을 했는데

전 지금 분명 홈디렉토리 이외의 디렉토리에 올리려고 합니다.


호스팅 서비스를 제공하거나 여러 사람이 서버를 이용한다면

위와 같은 설정이 반드시 필요 하겠지만

현재 Raspberry 서버를 저 혼자 사용하기 때문에 전 이 설정을 풀어 좀 자유롭게 이용할 계획입니다.


따라서 이전 포스팅에서 마지막에 수정했던


 - chroot_local_user=NO             => YES 로 수정

 - allow_writeable_chroot=YES      => 주석(#) 처리


위 내용을 수정하여 FTP를 재시작 합니다


그냥 그 설정을 유지하고 싶으시다면 /home/pi 디렉토리 아래 파일을 올리시거나 디렉토리를 생성하여 그 안에 올리시면 됩니다.

개인적으로는 별도의 디렉토리를 만들어 관리 하시는걸 추천합니다.



파일을 업로드 할 경로는 여러분이 마음에 드는 경로로 업로드 해주세요.


그리고 서버에 올렸으니

서버로 접속하여 위와 같이 똑같이 열리는지 확인해 봅니다.


짠~


그런데 로컬에서 보았던 화면이 보이지 않고, 아래와 같은 에러 화면이 나옵니다.


Forbidden

You don't have permission to access / on this server.

Apache/2.4.10 (Raspbian) Server at 서버IP Port 80







그 이유는 apache2의 설정을 변경해 주지 않았기 때문입니다.





Apache2 설정 변경


그럼 이제 Apache2 설정을 변경해 봅니다.


Apache2의 설정을 그냥 그대로 이용해도 크게 문제는 없겠지만

뭔가 관리하기에는 만족스럽지 않습니다.

기본적인 소스파일 들의 참조 위치가 Apache 설치 디렉토리 안에 있기 때문입니다.


우리가 원하는 디렉토리에 있는 내용을 보여주기 위해서는 2가지 파일을 수정해 주어야 합니다.


 - /etc/apache2/sites-enabled/000-default.conf

 - /etc/apache2/apache2.conf



우선 /etc/apache2/sites-enabled/000-default.conf 파일을 수정해 보도록 하겠습니다.


# sudo vi /etc/apache2/sites-enabled/000-default.conf  


000-default.conf 파일에서 DocumentRoot 부분츨 찾아 수정해 줍니다.


DocumentRoot /var/www/html    =>   DocumentRoot /home/www 로 수정


경로는 html 파일을 올린 경로로 수정을 해줍니다.

저같은 경우 /home/www 에 올렸기 때문에 위와 같이 수정하였습니다.






그리고 다음으로 /etc/apache2/apache2.conf 파일을 편집합니다.


# sudo vi /etc/apache2/apache2.conf


이 파일에서는 Directory 를 찾아 수정해 줍니다.

Directory 의 경로 중 /var/www 로 되어 있는 부분을 수정해 주면 됩니다.





그리고 apache2 서비스를 재시작 해줍니다.


# sudo systemctl restart apache2.service




이제 웹브라우저를 통해 접속을 하면


조금 전 우리가 만들었던 Hello 페이지를 볼 수 있습니다.








안드로이드 폰 화면에서 호출한 모습





반응형

관련글 더보기