2ステップでRaspberry PiをWebサーバー化して、ブラウザからPythonスクリプトを走らせる方法
カテゴリー:#電子工作 Raspberry Pi、Arduinoなど(記事数:240)

2017.09.14

2ステップでRaspberry PiをWebサーバー化して、ブラウザからPythonスクリプトを走らせる方法

自宅のIoT化進めていますが、Raspberry PiにApache入れてブラウザからPythonスクリプト走らせたり結果を表示したりする方法の個人的メモ

■Step.1: Apacheインストール
sudo apt-get update
sudo apt-get upgrade
sudo apt-get install apache2
サーバー起動
sudo service apache2 start
これでRaspberry PiのIPをブラウザでアクセスして(例:http://192.168.1.78など)「it working」みたいな画面が出ることをチェック

■Step.2: cgiを動作可能にする
(1)
各種設定ファイルは
/etc/apache2/に分散して入っている。/etc/apache2/mods-available/に利用可能な設定入っていて、/etc/apache2/mods-enabled/内のものが実際に使用可能になる、シンボリックリンクでcgi.loadをenabledディレクトリに
sudo ln -s /etc/apache2/mods-available/cgi.load /etc/apache2/mods-enabled/cgi.load

(2)/etc/apache2/mods-available/mime.conf
中の
#AddHandler cgi-script .cgi
を、コメントアウトをはずして、.pyを追加
AddHandler cgi-script .cgi .py

(3)Webアクセスするディレクトリは/var/www/なのでそこをスクリプト実行可能にする
具体的には
/etc/apache2/sites-available/defalt
中の<Directory /var/www/html>で囲われている中に
Options +ExecCGI
を追加
※バージョンより上記ファイルが無いことがあるみたい。直接/etc/apache2/apache2.confに書いてもい?
→OKっぽい

Apacheを再始動
sudo service apache2 restart

■注意点
これで/var/www中の.pyが実行可能になる。実行属性をつけるのを忘れないように
(例)sudo chmod 755 /var/www/1wire.py

あとスクリプトの最初の行に
#!/usr/bin/python
と書くことが必要。

何か表示するには最初に
print "Content-Type:text/html\n\n"
と書いておかないとブラウザに表示されない。

■■参考■■
何かトラブルがあった場合は
/var/log/apache2/error.log
にエラーログが出るのでそこを見る。

上記で現状は問題は起きてないけどいれたモジュールが権限の関係で実行出来ないことがあるらしい。たとえばその場合はapacheの実行ユーザーであるww-dataをグループgpioに追加するなど必要とのこと。
sudo gpasswd -a www-data gpio
この後、apacheを再起動する必要あり

追記
続き

Category:#電子工作 Raspberry Pi、Arduinoなど



■ ■ ■ コメント ■ ■ ■

いいっすね!=23

名前 ↑B

コメント(※改行は省略されます)

※3回以上の連続書き込み不可
この記事のアクセス数:2908

本カテゴリーで直近コメントが書かれた記事
12/12 00:58:「M5Stamp Fly」をドローン初心者が自宅で飛ばしてファームウェア更新から宙返り、UnitCam付けたりとか157989分前
11/29 08:19:おうち秋月電子かよ!自宅の積み電子キットがすごい量に・・・122日前
11/27 09:16:「Raspberry Pi Pico 2 W」は7ドル(1000円)でBluetoothもWifiも使える124日前
07/01 21:34:Arduinoで航空無線が聴ける。Arduino Nanoで制御するエアバンド受信シールド「SCARP」が9500円。2024年10月出荷開始272日前
12/06 16:22:赤外線カットフィルター無しのラズパイ公式カメラv2にフィルター追加481日前
11/03 10:39:オープンソースの家庭用地震計「EQIS-1」(PRIORIS)の完成品が8580円で登場514日前
09/29 11:31:Raspberry Pi 5が発表。4から2倍高速化、M2ストレージおよびPCI-Express2.0対応。外付けでGPUがつなげちゃう?1万円~549日前
08/28 00:48:Raspberry pi zero 2Wが本当に3500円で来た!zeroとの比較581日前
08/22 09:42:Raspberry zero 2Wが送料込み3500円587日前
06/24 23:21:今月の「トランジスタ技術」はラズパイカメラ特集。凄いこの雑誌セミプロの寄稿を集めた同人誌だ645日前
05/06 22:29:Raspberry PiでCPU温度を測定する方法694日前
04/24 23:54:何日間持つか実験。ラズパイzeroにUSBカメラとモバイルバッテリーをつないでリアルタイム配信706日前
04/08 09:45:『これが届く頃、俺の畑は既に死んでいるだろう』ラズベリーを地植えして超絶後悔した人の手記723日前


→カテゴリー:#電子工作 Raspberry Pi、Arduinoなど(記事数:240)
本カテゴリーの最近の記事(コメント数)
2025.03.05ラズパイ公式!ポメラ的な文章作成用ハンドヘルドPC「Micro Journal Rev.2 ReVamp」。Zero 2W搭載
2025.02.27理系フリマ8が3月1日開催
2024.12.10「M5Stamp Fly」をドローン初心者が自宅で飛ばしてファームウェア更新から宙返り、UnitCam付けたりとか32コメ
2024.12.05SeeedのRaspberry Pi zero用Grove Base(HAT)がベストフィットで良い感じ11コメ
2024.12.04Raspberry Piのカメラで静止画を撮る時のオプションメモ:fswebcam/USBカメラ時とraspistill/公式カメラ9コメ
2024.11.28おうち秋月電子かよ!自宅の積み電子キットがすごい量に・・・30コメ
2024.11.26「Raspberry Pi Pico 2 W」は7ドル(1000円)でBluetoothもWifiも使える46コメ
2024.11.17Raspberry Piベースの立体視カメラを作るためのオープンソースボード「StereoPi」15コメ
2024.11.03Raspberry Piとディスプレイでお手軽デジタルサイネージを作れるオープンソースソフト「Anthias」5コメ
2024.10.08Raspberry piは電源ぶつ切りするとすぐにカーネルパニック起こして起動しなくなる。改善方法と復旧方法27コメ

最近の常連さん
10年選手★48 京ポン3B(意地でもエッジ)★40 すきやき★77 ☆★45 ふぇいちゅん★2 F★52 ななしさそ★72 orz★38 らむ★32 ポコ★346 とくめい★82 τ(はじめてのすまほ) TW★52 うにゃ(emでネクサス5→�)★38 ω★105 ふぇちゅいん(年度末まったり) TW★95 名古屋関西人 TW★25 トクメー★17 umomo★2 匿名?★28 JP★26 ふぇちゅいんさんふぁん(ゆるりゆラリー)★101 白★53 特命さん★79 さてさて★30 knob★2 うぃ(滅茶苦茶久しぶり)★70 774(←半角のひと)★83 Dcd★83 謎★80 酔もぐら★41