ラズベリーパイはいろいろなことを実現できます。手始めにウェブサーバーを構築して掲示板などを動かしてみましょう。多少複雑ですが動いたときの感動などがあるのでなかなか楽しいのではないかと思います。
Table of Contents(目次)
Apache2のインストール
sudo apt install apache2
GGIを動かすための設定
a2enmod cgi
sudo vi /etc/apache2/apache2.conf
kentweb様の掲示板を動かすための設定は以下 sudo apt install libcgi-session-perl
sudo vi /etc/apache2/apache2.conf
#以下の設定をディレクトリーディレクティブ付近に追加 <Directory /var/www/html/cgi> Options +Indexes +FollowSymLinks +ExecCGI AllowOverride None Require all granted AddHandler cgi-script .cgi .cgi </Directory>
+ExecCGIとAddHandler cgi-script .cgiの設定が大事です。
apacheの起動
source /etc/apache2/envvars
systemctl start apache2
source /etc/apache2/envvarsがないと起動しませんでした。この設定は環境変数を読み込む設定のようです
掲示板のダウンロード
今回はkent-web様の掲示板スクリプトをダウンロードいたします。ダウンロード後に名前を変えて展開。スクリプトの実行権限とユーザを変えて、ログのパーミッションも変える。nkfで改行コードをUnixのLF形式に変えます。一応これで動くようになりました。
500番台の内部サーバエラー等が出る場合はエラーログを参照しましょう。何かわかるかもしれません。cat /var/log/apache2/error.log
実際のコマンド集
まずcgiの使えるディレクトリに移動してから以下のコマンドを実行。CGIの使えるディレクトリは上の設定ファイルに設定を追加している。上の場合/var/www/html/cgiが該当ディレクトリです
sudo wget http://www.kent-web.com/cgi/downld/downld.cgi?id=light
mv downld.cgi\?id=light light.zip
sudo mv downld.cgi\?id=light light.zip
unzip light.zip
sudo unzip light.zip
cd light/
sudo chown www-data:www-data *.cgi
sudo chmod 755 *.cgi
cd data/
sudo chmod 766 log.cgi
sudo apt install nkf
sudo nkf -Lu --overwrite admin.cgi
ln -s /usr/bin/perl /usr/local/bin/perl
sudo nkf -Lu --overwrite light.cgi