ITで遊ぶ

ラズパイ network managerコマンド他

もちろんシリアル・コンソールから可能です。WiFiがついているRaspberry PI Zero Wでやってます。

APポイント探索

sudo nmcli dev wifi

APポイントリスト(出てこないことがある)

nmcli dev wifi list

初めての接続

sudo nmcli dev wifi con "<SSID>" password "<Password>"

次からの接続

sudo nmcli con up "SSID"

ということで。
IPがふられているかは、”ip a”で。

Lighttpd

いつものapt update, apt upgradeしたら

sudo apt -y install lighttpd

/etc/lighttpd/lighttpd.conf内のdocument rootを自分のフォルダーにwwwを作って、そちらにする。
一応、index.html作ってIt Works!とでも書いておく。
ドキュメントルートは(私は)誰からも触れるように〜と作ったwwwは777にする。
だって誰もこのボードの存在すら知らないし、外部からスキャンのしようもない。

CGIの設定

昔の記事のコピペ。だって昔の記事をいちいち参照するのメンドクサイ。

cgiモジュールの稼働

sudo lighttpd-enable-mod cgi

Pythonをcgiで動くようにする

/etc/ligttpd/conf-available/10-cgi.confを編集

server.modules += ( "mod_cgi" )

$HTTP["url"] =~ "^/cgi-bin/" {
        cgi.assign = ( ".py" => "/usr/bin/python" )
        alias.url += ( "/cgi-bin/" => "/home/tsukasa/www/cgi-bin/" )
}

www以下にcgi-binフォルダーを作る。(フォルダーの属性は777にした)
以下のPython CGIを置いてみる。ヘッダーの#!を忘れないこと。

#!/usr/bin/python3
import cgi
import cgitb # for debug

cgitb.enable() # for debug

form = cgi.FieldStorage() # get data from form
value1 = form.getvalue('value1','')
value2 = form.getvalue('value2','')

print('Content-Type: text/html; charset=UTF-8\n')
html_body = '''
<!DOCTYPE html>
<html>
<body>
<h1>python cgi test</h1>
<p>value1 is %s</p>
<p>value2 is = %s</p>
</body>
</html>
'''
print(html_body % (value1, value2))

ファイル名は以下のhtmlで呼び出す名前でformtest.pyとした。実行属性をつけた。

呼び出すhtmlはwww以下に置いた。

<!DOCTYPE html><html><head>
<meta charset="utf-8">
<title>index</title></head><body>  
<form action="/cgi-bin/formtest1.py" method="post">  
<input type="text" name="value1"><BR />  
<input type="text" name="value2"><BR />  
<input type="submit" name="submit">  
</form>
</body>
</html>

 

関連記事

  1. 回線遅延シミュレーション

  2. DSLinuxの小技集

  3. WSLコマンドとLAMP設定

  4. 安いノートPCにはUbuntuを

  5. LinuxでViが嫌いなのでとりあえずMC

  6. Puppy Linux 4.20

  7. ubuntuでgccとエディタaee

  8. mac mini(Late2014)にUbuntu Serverをイン…