pythonでお手軽CGIサーバ
ずっとメモし忘れたので追加
Pythonでは数行でWebとかcgiサーバをたてることができたりするんですが、いつでも使えるようにメモ
- 一番単純にWeb(CGI)サーバをたてる場合
import CGIHTTPServer CGIHTTPServer.test()
スクリプトが置かれている位置がドキュメントルートになって、同階層のcgi-binディレクトリがcgi実行ディレクトリになるらしい。接続はlocalhostの8080ポート
- 少し詳細に設定する場合の例(普段俺さんが使っている例→適当かも。。。)
import os, BaseHTTPServer, CGIHTTPServer,SimpleHTTPServer class PyHTTPRequestHandler(CGIHTTPServer. CGIHTTPRequestHandler): def do_POST(self): if self.is_cgi(): CGIHTTPServer.CGIHTTPRequestHandler.do_POST(self) else: self.do_GET(); def is_python(self,path): head,tail=os.path.splitext(path) return tail.lower() in (".py", ".pyw",".cgi") BaseHTTPServer.HTTPServer( ('127.0.0.1', 80), PyHTTPRequestHandler ).serve_forever()
cgiディレクトリやポート番号とかも指定できる、上記例では80番ポートで接続。
もっと詳しく設定できるらしいので、もう少し情報を漁ってみます。
ちょっとした検証をするのに便利なので重宝しています。