Raspberry PiにApache2をインストールしてWebサーバーとして動作させ、pythonを実行可能にする(復習)
カテゴリー:#電子工作 Raspberry Pi、Arduinoなど(記事数:225)

↑B


2023.03.28

Raspberry PiにApache2をインストールしてWebサーバーとして動作させ、pythonを実行可能にする(復習)

↓これの続き

STEP.1、NginxのアンインストールとApacheのインストール
単にNginxよく知らないのでApacheに乗り換え
sudo apt remove nginx
sudo apt install apache2


なんかエラー出た。
sudo apt --fix-broken install

で直った?

sudo service apache2 start

エラー出て立ち上がらなかったけど再起動後は立ち上がった。

STEP.2、CGIを実行可能にする。
sudo ln -s /etc/apache2/mods-available/cgi.load /etc/apache2/mods-enabled/cgi.load

ln -sはシンボリックリンク(ショートカット)を作るコマンド、ハードリンクとの違い、挙動はよく分からん。。。

Webアクセスするディレクトリは/var/www/なのでそこをスクリプト実行可能にする
/etc/apache2/apache2.conf中の<Directory /var/www/>で囲われている中に
Options +ExecCGI

を追加

STEP.3、pythonを実行可能にする
/etc/apache2/mods-available/mime.conf中の
#AddHandler cgi-script .cgi

を、コメントアウトをはずして、.pyを追加
AddHandler cgi-script .cgi .py


Apacheを再始動
sudo service apache2 restart


これで/var/www中の.pyが実行可能になる。実行属性をつけるのを忘れないように
sudo chmod 755 /var/www/html/test.py


--実行ファイルサンプル--
#!/usr/bin/python
print("Content-Type:text/html\n\n")
print("test")


※重要※
何かトラブルがあった場合は/var/log/apache2/error.logを見る

ついでにsambaをインストール
sudo apt-get install -y samba

/etc/samba/smb.confに下記を書き込む
[nas]
path = /home/pi/nas/
guest ok = Yes
read only = No
force user = pi

再起動
sudo systemctl restart smbd


上記は以前やったこと↓の復習

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



■ ■ ■ コメント ■ ■ ■

いいっすね!=2

名前 ↑B

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

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

本カテゴリーで直近コメントが書かれた記事


→カテゴリー:#電子工作 Raspberry Pi、Arduinoなど(記事数:225)
本カテゴリーの最近の記事(コメント数)