- Web server 설치하기
- Apache Web server를 설치하기전에 먼저 다음 명령으로 Raspberry Pi의 Updating 과 Upgrading를 실행한다.
- 아래 명령으로 Apache2를 설치한다.
- Apache 설치 종료 후 정상적인 설치를 확인하기 위하여 웹 브라우저를 사용하여 Web server에 접속하기
- 아래 명령으로 /var/www/html 폴더에 index.html 파일을 확인한다. index.html 파일은 웹 브라우저로 Web sever에 연결 할 때 기본적으로 전송되는 파일이다.
- 내부 IP를 이용하는 경우 아래 명령으로 Pi의 내부 IP address를 확인한다.
- IP address가 윗 예와 같이 출력된 경우 웹 브라우저에서 http://192.168.0.15 로 연결하면 아래와 같이(아래 사진은 페이지의 일부임)Apache2 Debian Default Page 가 출력된다.
- html 폴더의 파일 소유자와 그룹을 변경한다.
- Hello world 웹 페이지 만들기
- Text editor를 사용하여 index.html 파일을 아래와 같이 변경하고 저장한다.
주: PuTTY 터미널 프로그램을 사용하는 경우 "PuTTY에서 SSH를 사용하여 원격접속하기"를 참고하기 바람.
sudo apt update
sudo apt upgrade
sudo apt install apache2 -y
cd /var/www/html
ls -al ls 명령의 결과 아래와 같이 index.html이 표시되어야 한다.
index.html
hostname -I
IP address 출력 예: 192.168.0.15
주: 외부에서 인터넷으로 접속하는 경우에는 아래 "외부에서 인터넷으로 접속 하기"를 참고하기 바람.
Apache2 Debian Default Page 예
현재 /var/www/html 폴더의 소유자가 root로 되어 있기 때문에 아래 명령을 사용하여 파일 소유자와 그룹을 변경한다.
cd /var/www
sudo chown -R pi:root html
윗 예는 소유자가 pi 이고 그룹이 root인 경우의 예 이다.
<!DOCTYPE html>
<html>
<head>
<title>My first web page</title>
</head>
<body>
<h1>My first web page</h1>
<p>Hello world</p>
</body>
</html>
참고자료: HTML Tutorial: w3schools.com
- 원격지에서 Web page 접속을 위한 공유기 설정
- 인터넷 공유기 관리 도구를 이용하여 포트포워드 설정을 한다. 포트포워드 설정은 사용 하는 공유기에 따라 다를 수 있기 때문에 사용하는 공유기 설명서를 참고 할 것.
- ipTime 공유기의 설정 예
- 공유기를 연결 하고 고급설정 -> NAT/라우터 관리 -> 포트포워드 설정을 선택 한다.
- 포트포워드 설정 창에서
- 규칙이름: 본인이 기억하기 좋은 이름(예: Ras Web page)을 입력 한다.
- 내부 IP주소: 공유기에서 확인한 Raspberry PI의 내부 IP 주소(예: 192.168.0.15)를 입력 한다.
- 외부 포트: 본인이 외부에서 접속 할 때 사용할 포트 번호. 공유기를 다른 PC와 공유하는 경우 외부에서 Raspberry Pi에 접속하기 위하여는 Port 번호(예 3680)를 사용하여 다른 PC와 구분하여 주어야 한다.
- 내부 포트: Web server에 기본적으로 활당된 번호는 80번 이다. 특별한 이유가 없으면 내부 포트 번호를 80으로 설정한다.
- 위 설정을 적용하고 저장 한다.
- 외부(원격지)에서 Raspberry Pi Web page에 접속하기
위 예와 같이 설정(외부 포트 번호: 3680, 내부 포트 번호: 80)한 경우 웹 브라우저에서 접속하기 위한 웹 주소(URL)는 "Host IP address:3680"이 된다. 내부 포트 번호를 80으로 설정한 경우에는 내부 포트 번호를 생략할 수 있다.
만약 Host IP address가 "myweb.iptime.org" 인 경우 웹 브라우저에서 접속하기 위한 웹 주소(URL)는 아래 예와 같다.
myweb.iptime.org:3680
- 인터넷 접속을 위한 공유기 설정을 완료 하면 PuTTY로 인터넷 주소를 사용하여 접속 할 수 있다.
- PuTTY를 실행 하고
- Host Name (or IP address): Host name을 입력 한다. 예: choras.iptime.org
- Port: Port 번호(인터넷 공유기에서 설정한 외부 포트번호)를 입력 한다.
- Connection type: SSH를 선택 한다.
- Open 버튼을 Click 하면 PuTTP 창이 열리고, login as: 메세지가 출력 된다.
- PuTTY 인터넷 접속을 위한 참고자료: 원격 접속(SSH, VNC) 설정 하기
- Raspberry Pi에 PHP 설치하기
- 아래 명령으로 PHP를 설치한다.
- PHP 설치 확인하기
- Text editor를 사용하여 index.php 파일을 아래와 같이 작성하여 html 폴더(index.html 이 위치한 폴더)에 저장한다.
- 아래 명령으로 Apache2를 다시 시작 한다.
- 웹 브라우저에서 아래 예와 같이 index.php에 연결한다.
- 웹 브라우저에서 Web server에 연결하여 "Hello world" 가 정상으로 출력 되는지 확인한다.
- PHP 정보와 설정 확인하기
- Text editor를 사용하여 phpinfo.php 파일을 아래와 같이 작성하여 html 폴더에 저장한다.
- 웹 브라우저에서 아래 예와 같이 phpinfo.php에 연결한다.
- 웹 브라우저에서 Web server에 연결하여 PHP 정보와 설정이 정상으로 출력(아래 사진은 페이지의 일부임) 되는지 확인한다.
sudo apt update
sudo apt install php -y
<?php echo "Hello world"; ?>
sudo service apache2 restart
http://192.168.0.15/index.php
<?php phpinfo(); ?>
위에서 phpinfo() 함수는 PHP 정보와 설정 출력하는 함수이다.
http://192.168.0.15/phpinfo.php
PHP 정보와 설정 출력 예