2018/6/15 更新
どうも、クラゲです。
世界で最も使われているWebサーバーApache2のインストールと設定方法を説明します。
Webページの表示だけでなく、pythonでCGIを動かせるように設定します。
[TOC]
Apache2をインストール
sudo apt-get install apache2
ユーザーディレクトリを有効化
ユーザーディレクトリを有効化すると、アクセスするときにpublic_htmlが不要となる。
sudo a2enmod userdir
まずはコマンド入力
sudo ln -s /etc/apache2/mods-available/cgi.load /etc/apache2/mods-enabled/cgi.load
nanoで設定ファイル変更
sudo nano /etc/apache2/sites-available/000-default.conf
28行目の # を削除して上書き保存する(Ctrl + O, Enter, Ctrl + X)
ちなみにnanoで現在のカーソル位置が何行目かは Ctrl + C で確認できる。
変更前
#Include conf-available/serve-cgi-bin.conf
変更後
Include conf-available/serve-cgi-bin.conf
sudo nano /etc/apache2/mods-available/mime.conf
219行目の #を削除し、最後に .pyを追加して上書き保存
変更前
#AddHandler cgi-script .cgi
変更後
AddHandler cgi-script .cgi .py
sudo nano /etc/apache2/conf-available/serve-cgi-bin.conf
/usr/lib/cgi-bin/ を /home/pi/public_html/cgi-bin に変更/usr/lib/cgi-bin を /home/pi/public_html/cgi-bin に変更変更前
                ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
                <Directory "/usr/lib/cgi-bin">
変更後
                ScriptAlias /cgi-bin/ /home/pi/public_html/cgi-bin
                <Directory "/home/pi/public_html/cgi-bin">
sudo nano /etc/apache2/envvars
16行目の www-data を pi に変更して上書き保存
変更前
export APACHE_RUN_USER=www-data
変更後
export APACHE_RUN_USER=pi
先にApacheを再起動
sudo service apache2 restart
public_html/cgi-bin/フォルダを作る
mkdir public_html
cd public_html
mkdir cgi-bin
cd cgi-bin
上記フォルダにHTMLファイルやpythonファイルを置いてアクセスしてみましょう。
pythonファイルはchmod 755で属性変更を忘れずに。
HTML表示やpython実行が正常通り実行されれば、成功です。
以上、Apache2のインストールとCGI設定でした!