Pythonで簡易HTTPサーバー
この方法はPython3でのやり方。
今更Python2は無いだろうけど。
HTTPサーバー起動
$ python -m http.server 8000
これでカレントディレクトリが公開されている。
ポート番号を8000にしているのは、80は管理者権限が必要なため。
CGIを動かしたいとき
オプションを指定する。
$ python -m http.server 8000 --cgi
CGIプログラムは./cgi-binに必ず置く。
このHTTPサーバは指定ファイルをそのまま素直に走らせているようなので、
Windowsの場合は.exeや.batなど、ダブルクリックで直接実行できるプログラムにする。
(標準出力を得て、標準出力するような)
WindowsのApacheは、shebangを読んでそのスクリプトエンジンで実行してくれるのに。
おまけ Windowsのexe作成
たとえばC#なら
Test1.cs
using System; namespace Test1 { public class Test1 { static void Main() { Console.WriteLine("Context/type: text/html"); Console.WriteLine(""); Console.WriteLine("Hello, C#!"); } } }
コンパイルは下記の通り
D:\> C:\Windows\Microsoft.NET\Framework64\v4.0.30319\csc.exe Test1.cs
Test1.exeの出来上がり。
VB.netなら
Test2.vb
Module Test2 Sub Main() Console.WriteLine("Context/type: text/html") Console.WriteLine("") Console.WriteLine("Hello, VB.net!") End Sub End Module
コンパイルは下記の通り
D:\> C:\Windows\Microsoft.NET\Framework64\v4.0.30319\vbc.exe Test2.vb
Test2.exeの出来上がり。
まとめ
ローカルのHTMLをhttpで表示したいだけで始めたのに、いろいろ試す事ができた。
たまにはC#やVB.netも楽しい。
同じタグの記事
- BOM付きUTF-8からBOMを除去するpython
- jythonのヒープメモリ設定
- Kotlin1.2.50がリリースされていた
- macOSをHigh Sierraに更新した。スクリプト実行環境のバージョンは変わったのか
- macOSをMojaveに更新した。スクリプト実行環境のバージョンは変わったか
- pathlib.Pathを調べる
- pyenvでpython環境をインストール
- pyenvとvirtualenvでpython環境を構築
- python unpack
- python3で数値のlistを文字列のlistに変換
同じカテゴリの記事