みなさんがWebページを開いた時,ブラウザはWebサーバに要求を送ります.
Webサーバはこれを受けて,ページを表示するためのファイルを送信します.
実際にRaspberry PiをWebサーバにしてみましょう.
前のページでRaspberry Piにリモートでアクセスできるようになっていることが前提で話を進めます.
以降は,Raspberry Pi直結のキーボードではなくご自身のノートパソコンで入力してください.
先ほど使用したPowerShellもしくはターミナルを用いて,ネットワーク越しにRaspberry Piをリモートで操作します.
まずは表示するHTMLファイルを用意します.こちらで用意したものがありますので,以下のコマンドを実行してHTMLファイルをダウンロードしてください.
wget https://raw.githubusercontent.com/gdsc-nitk/hands-on/main/index.html
ls
コマンドを実行してindex.html
があるかどうか確認します.
ここではWebページはどのように作られているか簡単に解説します.
第1回のGDSCイベントに参加した方や4,5年生は知っている内容も含まれると思いますので,読み飛ばしていただいてもかまいません.
Webページはブラウザで表示することができる簡単な文書です.
文書は HTML 言語で書かれています.
HTML関連する他の技術として,Webページの表示や表現を記述するための CSS ,機能や振る舞いを記述する JavaScript があります.
Webサーバのソフトウェアはいくつか種類がありますが,その中でもよく使われているNginxを今回は使用します.
インストールには,ソフトウェアを管理するapt
というコマンドを使用します.
- まずは
apt
でインストール可能なソフトウェアの最新情報を取得します.
sudo apt update
- Nginxをインストールします.
sudo apt install nginx -y
- Nginxが動いているか確認します.
systemctl status nginx
以下のようにActive: active (running)
と出力されれば正しく動作しています.
● nginx.service - A high performance web server and a reverse proxy server
Loaded: loaded (/lib/systemd/system/nginx.service; enabled; vendor preset: enabled)
Active: active (running) since Sat 2022-12-17 17:24:38 JST; 10min ago
- 先ほどダウンロードした
index.html
を所定の位置に配置します.
sudo cp index.html /var/www/html/
以上でWebサーバを立ち上げることができました.
普段使用しているブラウザを開き,アドレスバーにRaspberry PiのIPアドレスを入力してみてください.
すごそうなWebページが表示されていれば,正しく動作しています.