假设你急需一个简单的Web Server,但你又不想去下载并安装那些复杂的HTTP服务程序,比方:Apache,ISS等。那么, Python 可能帮助你。使用Python能够完毕一个简单的内建 HTTP server。于是,你能够把你的文件夹和文件都以HTTP的方式展示出来。佻仅仅须要干一件事情,那就是安装一个Python。

实际上来说,这是一个能够用来共享文件的非常实用的方式。

实现一个微型的HTTP服务程序来说是非常easy的事情。在Python下,仅仅须要一个命令行。以下是这个命令行:(如果我们须要共享我们的文件夹 /home/haoel而IP地址是192.168.1.1)

1
2
$
cd
/home/haoel
$ python -m SimpleHTTPServer

这即可了,而我们的HTTP服务在8000号port上侦听。你会得到以下的信息:

Serving HTTP on 0.0.0.0 port 8000 ...

你能够打开你的浏览器(IE或Firefox)。然后输入以下的URL:

http://192.168.1.1:8000

假设你的文件夹下有一个叫 index.html 的文件名称的文件,那么这个文件就会成为一个默认页。假设没有这个文件,那么,文件夹列表就会显示出来。

假设你想改变port号,你能够使用例如以下的命令:

1
$ python -m SimpleHTTPServer 8080

假设你仅仅想让这个HTTPserver服务于本地环境。那么,你须要定制一下你的Python的程序,以下是一个演示样例:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
import
sys
import
BaseHTTPServer
from
SimpleHTTPServer import
SimpleHTTPRequestHandler
HandlerClass
=
SimpleHTTPRequestHandler
ServerClass 
=
BaseHTTPServer.HTTPServer
Protocol    
=
"HTTP/1.0"
 
if
sys.argv[1:]:
    port
=
int
(sys.argv[1])
else:
    port
=
8000
server_address
=
(
'127.0.0.1', port)
 
HandlerClass.protocol_version
=
Protocol
httpd
=
ServerClass(server_address, HandlerClass)
 
sa
=
httpd.socket.getsockname()
print
"Serving HTTP on", sa[0],
"port", sa[1],
"..."
httpd.serve_forever()

注意:全部的这些东西都能够在 Windows 或 Cygwin 下工作。

python搭建web server的更多相关文章

  1. Python搭建Web服务器,与Ajax交互,接收处理Get和Post请求的简易结构

    用python搭建web服务器,与ajax交互,接收处理Get和Post请求:简单实用,没有用框架,适用于简单需求,更多功能可进行扩展. python有自带模块BaseHTTPServer.CGIHT ...

  2. express快速搭建web server

    安装express4.x npm install -g express npm install -g express-generator //express命令行工具在4.x分离出来了 express ...

  3. 从零开始的ESP8266探索(1)-使用Server功能搭建Web Server

    https://blog.csdn.net/Naisu_kun/article/details/80398667 文件系统 https://blog.csdn.net/solar_Lan/articl ...

  4. python 搭建 websocket server 发送 sensor 数据

    搞了几天,顺便把代码贴这里,需要的 python 包: gevent,gevent-websocket,bottle,wiringpi-python 简单说明: - gevent 提供了支持 conc ...

  5. python搭建web服务

    import json from urlparse import parse_qs from wsgiref.simple_server import make_server import os im ...

  6. 〖Linux〗使用gsoap搭建web server(C++)

    1. gsoap的好处就不用说了:百度百科 2. gsoap的下载地址:项目地址,目前我使用的是2.8.15版本 3. 开发环境:Ubuntu13.10 4. 具体操作步骤(以简单相加为例): 1)编 ...

  7. 〖Linux〗使用gsoap搭建web server(C)

    1. gsoap的好处就不用说了:百度百科 2. gsoap的下载地址:项目地址,目前我使用的是2.8.15版本 3. 开发环境:Ubuntu13.10 4. 具体操作步骤(以简单相加为例): 1) ...

  8. 真零基础Python开发web

    Python开发web服务的优势是开发效率高,可能只需要java五分之一的代码量. Python搭建web服务有许多框架,本文介绍Django和bottle两个框架. Django 安装 首先,安装该 ...

  9. python搭建简易Web Server

    如果你急需一个简单的Web Server,但你又不想去下载并安装那些复杂的HTTP服务程序,比如:Apache,ISS等.那么, Python可能帮助你,使用Python可以完成一个简单的内建 HTT ...

随机推荐

  1. redisd的非持久化配置

    如何关闭redis持久化?我的需求是只把redis当作缓存来用,所以持久化到硬盘对我的需求来说没有意义. 修改redis配置文件,redis.conf 第115行左右. 1.注释掉原来的持久化规则 # ...

  2. 移动端1px线适配问题-------适配各种编译CSS工具 stylus sass styled-componet实现方法

    其实在stylus与sass中实现移动端1像素线各个手机设备的适配问题的原理是一样的, 首先我还是先介绍一下原理和所依赖的方法 原理:其实他们都是通过css3的媒体查询来实现的 步骤思路: 1.给目标 ...

  3. C#override与new修饰隐藏的区别(转载)

    C#比java多一个new隐藏的功能.C# override重写相当于java中没有关键字的方法重写.所以java中方法是没有隐藏功能的. C# override重写,是指对父类中的虚方法(标记vir ...

  4. 第1节 hive安装:2、3、4、5、(多看几遍)

    第1节 hive安装: 2.数据仓库的基本概念: 3.hive的基本介绍: 4.hive的基本架构以及与hadoop的关系以及RDBMS的对比等 5.hive的安装之(使用mysql作为元数据信息存储 ...

  5. hdfs深入:03、hdfs的架构以及副本机制和block块存储

    HDFS分布式文件系统设计目标 1.            硬件错误  由于集群很多时候由数量众多的廉价机组成,使得硬件错误成为常态 2.            数据流访问  所有应用以流的方式访问数 ...

  6. IIS+php服务器无法上传图片解决办法

    查找网上资料,发现php.ini下面有2个地方关于上传的配置: file_uploads = On  这里设置是否允许HTTP上传,默认应该为ON的 ;upload_tmp_dir=  这里设置上传文 ...

  7. vue中axios发送post请求,后端(@RequestParam)接不到参数

    遇到的问题描述 :axios post 请求,后端接收不到参数. 我们的接口是java,用@RequestParam来接收前端的参数 解决方案:使用qs:axios中已经包含有qs,所以无需重新安装, ...

  8. [0] Hello World

    受不了CSDN了,广告多,慢,编辑器难用,还限制博客数量.

  9. (十)python3 生成器

    生成器(generator):在 Python 中,不必创建完整的 list,从而节省大量的空间.一边循环一边计算的机制. 创建一个 generator,有很多种方法.第一种方法很简单,只要把一个列表 ...

  10. C语言学习4

    C/C++语言五大内存分区:堆.栈.自由存储区.全局/静态存储区和常量存储区 栈:就是那些由编译器在需要的时候分配,在不需要的时候自动清楚的存储区,里面的变量通常是全局变量.函数参数等. 堆:就是那些 ...