Computer >> 컴퓨터 >  >> 하드웨어 >> 하드웨어

라즈베리 파이를 개인 웹 서버로 만드는 완벽 가이드

라즈베리 파이를 개인 웹 서버로 만드는 완벽 가이드

직접 웹사이트를 만들고 싶지만 대규모 서버 처리까지는 필요 없다면 어떨까요? 라즈베리 파이(Raspberry Pi) 하나만 있으면 웹사이트를 직접 구축하고 호스팅하며 관리할 수 있다면 훨씬 간편하지 않을까요? 이번 튜토리얼에서는 라즈베리 파이를 나만의 개인 웹 서버로 바꾸는 방법을 단계별로 소개합니다.

이 가이드를 끝까지 따라 하면 인기 있는 Apache 웹 서버를 라즈베리 파이에 설치하고, PHP를 설정한 뒤, 로컬 네트워크의 누구나 접속할 수 있는 간단한 웹페이지를 만드는 방법까지 익히게 됩니다.

Apache 웹 서버란 무엇인가?

Apache는 전 세계에서 가장 널리 사용되는 웹 서버 애플리케이션 중 하나로, 작성 시점 기준 전체 웹 서버의 약 40%를 차지하고 있습니다.

라즈베리 파이에 Apache를 설치해 두면 로컬 네트워크에 접속한 누구에게나 다양한 파일을 제공하는 서버로 활용할 수 있습니다.

준비물

이 튜토리얼을 완료하려면 다음 항목이 필요합니다:

  • Raspbian이 설치된 라즈베리 파이 — 아직 Raspbian이 없다면 최신 버전을 내려받은 후 Etcher를 이용해 microSD 카드에 플래싱하세요.
  • 라즈베리 파이 모델과 호환되는 전원 케이블
  • 외장 키보드와 이를 라즈베리 파이에 연결할 수단
  • HDMI 또는 마이크로 HDMI 케이블(라즈베리 파이 모델에 따라 다름)
  • 외부 모니터
  • 이더넷 케이블 또는 Wi-Fi 연결

Raspbian 업데이트하기

아직 연결하지 않았다면 외장 키보드, 모니터 등 주변 기기를 라즈베리 파이에 연결한 후 전원을 꽂습니다.

본격적으로 시작하기 전에 Raspbian이 최신 버전인지 확인하는 것이 좋습니다. 상단 툴바의 '터미널(Terminal)' 아이콘을 클릭해 터미널 창을 열고 다음 명령어를 입력하세요:

sudo apt-get update
sudo apt-get upgrade

업데이트가 하나 이상 설치되었다면 다음 명령어로 라즈베리 파이를 재부팅합니다:

reboot

재부팅이 완료되면 라즈베리 파이가 최신 버전의 Raspbian으로 실행됩니다.

Apache 웹 서버 설치하기

이제 라즈베리 파이에 Apache2 패키지를 설치할 준비가 되었습니다. 터미널에 다음 명령어를 입력하세요:

sudo apt install apache2 -y

이것으로 끝입니다! 이제 라즈베리 파이가 기본적인 웹 서버로 작동하고 있습니다.

Apache 웹 서버가 실제로 작동하는 모습을 확인하려면 웹 브라우저에 라즈베리 파이의 IP 주소를 입력해야 합니다. IP 주소를 확인하려면 터미널 창에서 다음 명령어를 실행하세요:

hostname -I

명령어를 실행하면 라즈베리 파이의 IP 주소가 반환됩니다. 이 주소를 웹 브라우저에 입력하면 다음과 같은 페이지가 표시됩니다.

라즈베리 파이를 개인 웹 서버로 만드는 완벽 가이드

축하합니다! 방금 여러분만의 웹 서버를 성공적으로 만들었습니다.

권한 얻기: Apache HTML 파일 편집하기

'It works!'라는 문구가 보이는 웹페이지는 사실 라즈베리 파이의 '/var/www/html' 폴더에 위치한 HTML 파일입니다.

이 파일을 살펴보려면 Raspbian의 파일 관리자 앱(툴바의 파일 아이콘 클릭)을 연 뒤 '/var/www/html' 경로로 이동하세요. 이 폴더에는 'index.html' 파일이 들어 있으며, 지금 브라우저에서 보고 있는 페이지가 바로 이 파일입니다.

다음 섹션에서는 이 파일을 간단히 수정해 보고, 추가로 로컬 네트워크의 모든 사용자에게 Apache가 제공할 새로운 HTML 파일도 만들어 보겠습니다.

터미널 창에서 디렉터리를 변경(cd)하여 'index.html' 파일이 있는 곳으로 이동합니다.

cd /var/www/html

그다음 다음 명령어를 실행하세요:

ls -al

터미널에 출력되는 정보를 보면 'index.html' 파일의 소유자가 'root' 사용자임을 알 수 있습니다.

라즈베리 파이를 개인 웹 서버로 만드는 완벽 가이드

이 파일을 편집하려면 먼저 소유권을 가져와야 합니다. 터미널 명령어로 소유권을 변경할 수 있습니다. 아래 예시는 Raspbian의 기본 사용자 이름인 'pi'를 사용한다고 가정합니다. 사용자 이름을 직접 변경했다면 명령어에 그에 맞게 수정해야 합니다:

sudo chown pi: index.html

ls -al 명령어를 다시 실행하면 이제 'pi' 사용자에게 파일 편집 권한이 부여된 것을 확인할 수 있습니다.

라즈베리 파이를 개인 웹 서버로 만드는 완벽 가이드

HTML: Apache 웹페이지 커스터마이징하기

이제 다음 터미널 명령어로 'It works!' 페이지를 편집 모드로 열 수 있습니다:

nano index.html

이 명령어를 실행하면 'index.html' 파일이 Raspbian의 Nano 텍스트 편집기에서 열립니다.

라즈베리 파이를 개인 웹 서버로 만드는 완벽 가이드

페이지 코드의 모든 부분을 자유롭게 수정할 수 있지만, 여기서는 간단하게 진행하기 위해 제목(heading) 부분에 표시되는 텍스트만 변경해 보겠습니다.

라즈베리 파이를 개인 웹 서버로 만드는 완벽 가이드

수정을 마쳤으면 Ctrl + O를 눌러 파일을 저장한 후, Ctrl + X를 눌러 편집기를 종료합니다.

이제 웹 브라우저에서 라즈베리 파이의 IP 주소를 다시 불러오면 변경된 내용을 확인할 수 있습니다.

라즈베리 파이를 개인 웹 서버로 만드는 완벽 가이드

웹사이트를 동적으로 만들기: PHP 7 설치

기본 설정의 Apache 웹 서버는 정적(static) 콘텐츠만 제공할 수 있으므로, 페이지가 사용자가 입력하는 정보에 반응하지 않습니다. 콘텐츠를 동적(dynamic)으로 만들고 싶다면 최신 버전의 PHP를 설치해야 합니다. 작성 시점 기준 최신 버전은 PHP 7.4입니다.

이 섹션에서는 최신 버전의 PHP와 Apache용 PHP 모듈을 설치합니다:

sudo apt install php libapache2-mod-php -y

PHP가 올바르게 설정되었는지 테스트하려면 '/var/www/html/' 디렉터리에 PHP 파일을 생성한 뒤, 이 파일이 웹 브라우저에 정상적으로 표시되는지 확인하겠습니다.

'mywebpage.php'라는 이름의 PHP 파일을 만들려면 터미널 창에서 다음 명령어를 실행하세요:

sudo nano /var/www/html/mywebpage.php

'mywebpage.php' 파일이 Nano에서 자동으로 열립니다. Nano 텍스트 편집기에 다음 PHP 스크립트를 입력하세요:

<?php
echo "Today is " . date('Y-m-d H:i:s');

이 간단한 스크립트는 오늘 날짜를 가져와 웹페이지에 표시합니다.

스크립트를 저장하려면 Ctrl + O를 누른 후, Ctrl + X를 눌러 종료합니다.

동적 PHP 테스트하기

PHP 파일이 올바르게 제공되는지 테스트하려면 웹 브라우저에 라즈베리 파이의 IP 주소를 입력한 뒤 뒤에 '/mywebpage.php'를 붙여 접속합니다. 예를 들어 IP 주소가 190.100.1.100이라면 다음 URL을 입력하면 됩니다:

https://190.100.1.100/mywebpage.php

PHP 파일이 정상적으로 제공되고 있다면 브라우저에 다음 이미지와 비슷한 화면이 표시됩니다.

라즈베리 파이를 개인 웹 서버로 만드는 완벽 가이드

이처럼 라즈베리 파이를 웹 서버로 바꾸는 것은 생각보다 쉽습니다. 다만 공용 네트워크에서 웹 서버에 접속하려면 별도로 동적 IP(Dynamic DNS) 설정을 해야 한다는 점을 기억하세요.