搭建Python HTTP服务

我们常需要搭建HTTP服务,但是又不想搞那些复杂的Apache、ISS服务器等,这时我们就可以用python帮我们搭建服务器。 例如之前讲过的用python建XMLRPC开服务进行server/client通信,但这里还有个问题,如果我需要显示本地文件(比如图片),但是rpc不可以直接访问本地文件怎么办?

这种情况下,只需要再开一个简单服务,显示指定文件夹下文件,再用那个rpc服务调这个服务的文件地址 即可。

下面是一个搭建HTTP服务显示本地文件的例子:

import sys
import BaseHTTPServer
from SimpleHTTPServer import SimpleHTTPRequestHandler
HandlerClass = SimpleHTTPRequestHandler
ServerClass  = BaseHTTPServer.HTTPServer
Protocol     = "HTTP/1.0"

port = 8024
import socket
hostname = socket.gethostbyname(socket.gethostname())
server_address = (hostname, 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()

访问该程序打印出来的地址即可访问本地文件了:

版权声明:本文为博主原创文章,未经博主允许不得转载。

时间: 2024-10-24 00:20:48

搭建Python HTTP服务的相关文章

在SAE搭建Python+Django+MySQL(基于Windows)

为了与时俱进,工作闲余开始研究Python,刚一接触就被Python这"优雅"的语法吸引住!后来接触到了Django,虽然还没有太深入的研究,但对这种新概念的WEB开发很感兴趣,决定尝试用它代替Java开发小的后台程序,边用边学吧! 注:本篇只介绍基础搭建过程,不负责讲解,因为刚接触Python我也不懂! 一.SAE使用的Python环境版本 Python2.7 Django1.27 / 1.4 / 1.5 本地版本要确定好,需要用到其他的预装模块也要确定好. (我一开始使用了高版本的

快速搭建Python开发环境

快速搭建Python开发环境·Python入门学习速成系列<1> 当我们在学习一门新的技术或者新的编程语言时,经常感觉无从下手.学习初期往往不知道事先应该准备什么:或者刚开始准备,在安装问题就栽了一个大跟头:甚至我们准备完成后,开始学习是,才发现事先应该准备安装的软件没有到位等.这样或那样的问题就困扰我们学习之初,花费了大量的时间. 本文主要介绍在Windows和Linux主流操作系统上快速部署Python开发环境. 准备Python开发环境 在准备部署Python开发环境时,往往会选择不同的

利用OpenStreetMap(OSM)数据搭建一个地图服务

 http://www.cnblogs.com/LBSer/p/4451471.html 图 利用OSM数据简单发布的北京地图服务   一.OSM是什么 开放街道图(OpenStreetMap,简称OSM)是一个网上地图协作计划,目标是创造一个内容自由且能让所有人编辑的世界地图(wiki:http://wiki.openstreetmap.org/wiki/Main_Page).尤其值得称道的是,osm数据开源,可以自由下载使用. 二.OSM数据结构 OpenStreetMap包括空间数据以及属

0038-如何在CDH集群安装Anaconda&amp;搭建Python私有源

温馨提示:要看高清无码套图,请使用手机打开并单击图片放大查看. 1.文档编写目的 Anaconda是一个用于科学计算的Python发行版,支持 Linux, Mac, Windows系统,提供了包管理与环境管理的功能,可以很方便地解决多版本python并存.切换以及各种第三方包安装问题. 在企业集群无外网环境下,通过搭建企业私有的Python源,可以使用pip工具方便的安装,以解决Anaconda环境中没有的依赖包的问题. 本文档讲述如何在CDH集群离线安装Anaconda.搭建Python私有

搭建Pypi转发服务

有时候有些正式环境的机器,不能访问外网,就只能在能访问外网的机器上搭建一个转发服务. 一.安装包 pip install flask_pypi_proxy flask_pypi_proxy 二.启动 创建文件 server.py # encoding=utf8 import os # os.environ['FLASK_PYPI_PROXY_CONFIG']='/data1/pypi/server.conf' #配置文件路径 os.environ['PYPI_PROXY_BASE_FOLDER_

Ubuntu16.04下使用sublime text3搭建Python IDE

本来是想用pycharm,但你看它的内存要求,我的虚拟机一共也就1G Vim太别扭了,就算有代码颜色,不能自动对齐,不能规范格式,跳转到函数定义,显示文档,要配置起来太费劲,所以就尝试着用sublime text3 来搭建Python IDE 安装sublime text3 目前最简单的方法是通过ppa安装,打开终端,输入以下命令: sudo add-apt-repository ppa:webupd8team/sublime-text-3 sudo apt-get update sudo ap

写一个python的服务监控程序

写一个python的服务监控程序 前言: Redhat下安装Python2.7 rhel6.4自带的是2.6, 发现有的机器是python2.4. 到python站点下载源码.解压到Redhat上.然后执行以下的命令: # ./configure --prefix=/usr/local/python27 # make # make install 这样安装之后默认不会启用Python2.7.须要使用/usr/local/python27/bin/python2.7调用新版本号的python. 而

[CI] 使用CodeIgniter框架搭建RESTful API服务

在2011年8月的时候,我写了一篇博客<使用CodeIgniter框架搭建RESTful API服务>,介绍了RESTful的设计概念,以及使用CodeIgniter框架实现RESTful API的方法.转眼两年过去了,REST在这两年里有了很大的改进.我对于前一篇博客中的某些方面不是很满意,所以希望能利用这次机会写一个更加完善的版本.我的项目基于Phil Sturgeon的CodeIgniter REST Server,遵循他自己的DBAD协议.Phil的这个项目很棒,干净利落,简单实用,并

Visual Studio Code搭建python开发环境

开发Python的环境有很多,原来已经在vs2013上面搭建好python的开发环境了,但是vs2013每次启动都占太多内存(太强大了吧),这下出了vs code,既轻量又酷炫,正好拿来试一试开发python,点击visual studio code1.9安装教程 下面直接上搭建Python环境步骤: 1.打开vs code,按按F1或者Ctrl+Shift+P打开命令行,然后输入ext install 输入Python,选第一个,这个用的最多,支持自动补全代码等功能,点击安装按钮,即可安装 下