假设你急需一个简单的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. Android(java)学习笔记191:ContentProvider使用之利用ContentProvider备份和还原手机短信(掌握)

    1. 通过阅读系统源码我们知道: 短信的内容提供者: content://sms/            系统短信的内容提供者的路径 2. 利用ContentProvider备份和还原手机短信: (1 ...

  2. sql server数据类型与其他数据库数据类型对应关系

    SELECT * FROM msdb.dbo.MSdatatype_mappings SELECT * FROM msdb.dbo.sysdatatypemappings

  3. 今天被 <!doctype html> 搞了两个小时,两个页面同样的样式,chosen右边的小箭头,一个上下居中对齐 一个居顶对齐。最后找到问题所在doctype

    今天被 <!doctype html> 搞了两个小时,两个页面同样的样式,chosen右边的小箭头,一个上下居中对齐 一个居顶对齐.最后找到问题所在doctype <-- 这个小箭头

  4. asp.net的请求管道事件

    一.引言 上篇介绍了Http的请求过程提到了在请求进入到创建完 HttpApplication 对象后,将进入一系列的处理事件Event,那么这些事件具体都有哪些呢,这篇文章就来简要阐述一下. 二.正 ...

  5. JavaSE-16 集合框架

    学习要点 Java集合框架内容 ArrayList和LinkedList HashMap Iterator 泛型集合 Java的集合框架 1  概述 数据结构是以某种形式将数据组织在一起的集合,它不仅 ...

  6. Perl语言入门:第六章习题:处理用户所指定的名字并汇报相应的姓。

    37 print "\n----------------------------------_exercise_6_1--------------------------\n";  ...

  7. PHP 下基于 php-amqp 扩展的 RabbitMQ 简单用例 (四) -- Push API 和 Pull API

    RabbitMQ 中针对消息的分发提供了 Push API (订阅模式) 和 Pull API (主动获取) 两种模式. 在 PHP 中, 这两种模式分别通过 AMQPQueue 类中的 consum ...

  8. PLSQL连接Oracle 报错ORA-12154:TNS:无法解析指定的连接标识符

    原因是图中第三行数据库应该填ip地址,我填了数据库名! 之前不懂原理,现来填坑,并不是应该填ip,而是填tnsname.ora中配置的名字(红框部分) ​

  9. 装饰器(python)

    一,装饰器定义:本质就是函数,功能是为其他函数添加新功能原则:1.不修改被装饰函数的源代码(开放封闭原则)2.为被装饰函数添加新功能后,不修改被修饰函数的调用方式3.装饰器=高阶函数+函数嵌套+闭包高 ...

  10. 常见的Redis问题?

    Redis的那些最常见面试问题[转] 1.什么是redis? Redis 是一个基于内存的高性能key-value数据库. 2.Reids的特点 Redis本质上是一个Key-Value类型的内存数据 ...