Command-Line
簡單的命令行 HTTP 伺服器
我有一個腳本,它會生成一份我想為所謂的公眾提供的每日報告。問題是我不想增加對具有所有配置和安全含義的 HTTP 伺服器(例如 Apache)的維護。
是否有一個簡單的解決方案來提供一個小的 HTML 頁面,而無需配置一個完整的 HTTP 伺服器?
python -m SimpleHTTPServer # or the Python 3 equivalent python3 -m http.server
它應該服務於http://0.0.0.0:8000的CWD(例如 index.html)中的任何內容。
有一個http 靜態伺服器單線的大列表:
要進入此列表,解決方案必須:
- 使用目前目錄(或指定目錄)作為伺服器根目錄提供靜態文件
- 能夠使用單個、一行命令執行(如果它們是一次性的,則依賴關係很好)
- 使用適當的 mime 類型提供基本文件類型(html、css、js、圖像),除了命令本身(沒有特定於框架的伺服器等)之外不需要配置(來自文件或其他)
- 必須在前台執行或具有可以執行的模式(即沒有守護程序)
例如:
twistd -n web -p 8000 --path .
- Erlang :
erl -s inets -eval 'inets:start(httpd,[{server_name,"NAME"},{document_root, "."},{server_root, "."},{port, 8000},{mime_types,[{"html","text/html"},{"htm","text/html"},{"js","text/javascript"},{"css","text/css"},{"gif","image/gif"},{"jpg","image/jpeg"},{"jpeg","image/jpeg"},{"png","image/png"}]}]).'
cpan Plack plackup -MPlack::App::Directory -e 'Plack::App::Directory->new(root=>".");' -p 8000
webfsd -F -p 8000
ruby -run -ehttpd . -p8000