文档章节

15 个简单、有趣而实用的 单行 HTTP Server

大数据之路
 大数据之路
发布于 2016/05/15 22:51
字数 454
阅读 3436
收藏 8

不少语言或服务开发框架都内置了简单的 Web Server 供我们方便的调试使用。比如有时候我们需要调试单个 PHP 页面而不想搭建一套完整的 PHP 环境,亦或者我们只是临时的共享一下文件而不想搭建一套完整的 Web 服务器或者 FTP,那么本文讲述的这些简单、有趣而实用的的 One Line HTTP Server 或许能让你大开眼界~

1、Python 2.x

python -m SimpleHTTPServer 8000

-- Python 3.x:

python -m http.server 8000

2、Twisted (Python)

twistd -n web -p 8000 --path .

-- or:

python -c 'from twisted.web.server import Site; from twisted.web.static import File; from twisted.internet import reactor; reactor.listenTCP(8000, Site(File("."))); reactor.run()'

3、Ruby

ruby -rwebrick -e'WEBrick::HTTPServer.new(:Port => 8000, :DocumentRoot => Dir.pwd).start'

-- Ruby 1.9.2+

ruby -run -ehttpd . -p8000

4、adsf (Ruby)

gem install adsf   # install dependency
adsf -p 8000

5、Sinatra (Ruby)

gem install sinatra   # install dependency
ruby -rsinatra -e'set :public_folder, "."; set :port, 8000'

6、Perl

cpan HTTP::Server::Brick   # install dependency
perl -MHTTP::Server::Brick -e '$s=HTTP::Server::Brick->new(port=>8000); $s->mount("/"=>{path=>"."}); $s->start'

7、Plack (Perl)

cpan Plack   # install dependency
plackup -MPlack::App::Directory -e 'Plack::App::Directory->new(root=>".");' -p 8000

8、Mojolicious (Perl)

cpan Mojolicious::Lite   # install dependency
perl -MMojolicious::Lite -MCwd -e 'app->static->paths->[0]=getcwd; app->start' daemon -l http://*:8000

9、http-server (Node.js)

npm install -g http-server   # install dependency
http-server -p 8000

10、node-static (Node.js)

npm install -g node-static   # install dependency
static -p 8000

11、PHP (>= 5.4)

php -S 127.0.0.1:8000

-- 需要 -t 指定 root dir 或者启动目录下创建 index.php:<?php phpinfo(); ?> 来测试效果

12、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"}]}]).'

13、busybox httpd

busybox httpd -f -p 8000

14、webfs

webfsd -F -p 8000

15、IIS Express

C:\> "C:\Program Files (x86)\IIS Express\iisexpress.exe" /path:C:\MyWeb /port:8000

 

Refer:

[1] Big list of http static server one-liners

https://gist.github.com/willurd/5720255

[2] 300行python代码的轻量级HTTPServer实现文件上传下载

http://my.oschina.net/leejun2005/blog/71444

© 著作权归作者所有

共有 人打赏支持
大数据之路
粉丝 1562
博文 516
码字总数 342503
作品 0
武汉
架构师
私信 提问
2017 年 8 月:15 个有趣的 JS 和 CSS 库

炎热的 7 月已经过去,秋天的脚步更近了。在本月,Tutorialzine 依旧为大家带来了一些有趣、实用的前端库,看看有哪些适合你的项目呢? 1.Titanic 这是一组自带悬停动画的精致 SVG 图标。但与...

IT程序狮
2017/08/31
0
0
分享50个有趣的导航菜单设计

日期:2011/12/28 来源:GBin1.com 1. Alexarts 一个看上去很好的主页,由4个大气球作为导航菜单,当访问者停留在上面时,气球就会飘起来。 2. Blogger Bake Off 一个精美的网页设计,它使用...

gbin1
2012/01/10
4.1K
2
Java日志组件 log5j 使用介绍

大家都很熟悉log4j啦,log5j在log4j的基础上提供了几个改进,应该说是简单和实用的封装。有趣的是log5j主页对自己名字的解释,因为要感谢JDK 1.5,所以才叫了这个名字,不知道是不是升级到J...

leon_rock
2012/02/27
0
0
Ubuntu Server Tip

Ubuntu Server Tip 是一个有趣且实用的小工具,它可以每次显示一条简短的 Linux Tips ,帮助你增长知识 。另外它还可以内置于 motd ( /etc/motd )中,这样你每次登录 Ubuntu 服务器的时候,同...

匿名
2011/01/13
987
0
Windows下22个实用的代码编辑器

虽然 Windows 下的代码编辑器有很多,但只有少数值得一用,而毕竟需要一段时间才能够找到最适合自己的那一个,那么,来挑一个你最喜欢的吧![完整图文版]。需要指出的是,我所提到的仅仅是每...

红薯
2009/05/29
24.8K
41

没有更多内容

加载失败,请刷新页面

加载更多

转--C++ operator关键字(重载操作符)

operator是C++的关键字,它和运算符一起使用,表示一个运算符函数,理解时应将operator=整体上视为一个函数名。 这是C++扩展运算符功能的方法,虽然样子古怪,但也可以理解: 一方面要使运算...

天王盖地虎626
27分钟前
0
0
工作流题目

1. 当 创建流程审批系统时,我们需要 具备 哪些 功能? 答:(1) 流程管理 (2) 流程发起 (3) 流程 审批 (4) 流程 查询

杨凯123
53分钟前
2
0
每个 JavaScript 工程师都应懂的33个概念

简介 这个项目是为了帮助开发者掌握 JavaScript 概念而创立的。它不是必备,但在未来学习(JavaScript)中,可以作为一篇指南。 本篇文章是参照 @leonardomso 创立,英文版项目地址在这里。 ...

前端小攻略
今天
1
0
使用keepalived实现nginx的高可用

概述 是这样子的,我想让家中所有的应用服务都从nginx中出去,让nginx处于访问的最边缘地带,为了让nginx可靠性加强,所以nginx就得实现高可用,分别是下面两台机器要做nginx的集群 10.10.10...

bboysoulcn
今天
3
0
Mysql索引机制B+Tree

1、问题引入 有一个用户表,为了查询的效率,需要基于id去构建索引。构建索引我们需要考虑两个方面的问题,1个是查询的效率,1个是索引数据的存储问题。该表的记录需要支持百万、千万、甚至上...

万山红遍
今天
48
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部