web服务器python_一个简单的web服务器(python)
今天用python写一个简单的web服务器代码网上都有只是为了方便大家学习做了一个简单的教程
第一首先我们来一张架构以及运行过程的流程图
本文学习仅供参考,需要更多资料可以加群:496257369
简单来说就是web服务器一直监听是否有来自用户的请求
1.如果有请求判断请求得html文件是否存在
2.存在就返回html文件给用户
3.不存在就返回一个404的错误给用户
效果
本文学习仅供参考,需要更多资料可以加群:496257369
本文学习仅供参考,需要更多资料可以加群:496257369
下面贴上这次实现的代码#-*- coding:utf-8 -*-from BaseHTTPServer import BaseHTTPRequestHandler,HTTPServerclass MyHandler(BaseHTTPRequestHandler): #继承BaseHTTPRequestHandler类里面所有的方法 def do_GET(self): try: #当服务器接收到GET请求后调用此方法并尝试打开客户端传来的路径('移除前导"/"') 如果一切正常就会return一个ok #比如我的url是 127.0.0.1/cehsi.html (第八行)会读取当前路径下面的ceshi.html files = open(self.path[1:],'r') self.send_response(200) #如果找到了就返回一个200 self.send_header('Content-type', 'text/html') #这个是数据的头部文件 self.wfile.write(files.read()) #读取html文件并返回给用户 files.close() #释放文件占用的系统资源 except: self.send_error(404, 'File not found: %s '% self.path) #如果报错就提示404 没有找到文件def main(): try: server = HTTPServer(('', 8088), MyHandler) #实例化对象server调用HTTPServer类 并传进去一个8088(socket服务监听的端口) 并把我们自己写的类传进去 print 'welcome to the machine...' #打印欢迎信息 print 'ctrl+c quit' #退出方法 server.serve_forever() #调用serve_forver方法让程序一直监听8088端口并循环等待用户请求 except KeyboardInterrupt: print 'ctrl+c received, shuttingdow server' #如果监听到键盘输入crtl+c就停止程序 server.socket.close()if __name__ == '__main__': main()
Html代码 ceshi.htmlTitle
测试页面<
/h1>
web服务器python_一个简单的web服务器(python)相关推荐
- ipad php mysql_如何用PHP/MySQL为 iOS App 写一个简单的web服务器(译) PART1
原文:http://www.raywenderlich.com/2941/how-to-write-a-simple-phpmysql-web-service-for-an-ios-app 作为一个i ...
- 我的Go语言学习之旅八:创建一个简单的WEB服务器
因为一直在做WEB程序,所以更关注WEB界的发展,这里就用GO做了一个简单的WEB服务器,直接看例子吧 package main import ( "fmt" "net/ ...
- hosts多个ip对应一个主机名_一个简单的Web应用程序,用作连接到ssh服务器的ssh客户端...
WebSSH 一个简单的Web应用程序,用作连接到ssh服务器的ssh客户端.它是用Python编写的,基于tornado,paramiko和xterm.js. 特征 支持SSH密码验证,包括空密码. ...
- ios php mysql实例_如何用PHP/MySQL为 iOS App 写一个简单的web服务器(译) PART1
原文:http://www.raywenderlich.com/2941/how-to-write-a-simple-phpmysql-web-service-for-an-ios-app 作为一个i ...
- 用python写一个简单的web服务器
人生苦短,我用python 简洁高效,这才是理想的语言啊 分享一点python的学习经验-----如何用python写一个简单的web服务器 首先,我们需要简单地了解一下网络通信协议,这里用白话介绍一 ...
- java实现web服务器_Java 实现一个简单的web服务器
在日常的开发中,我们用过很多开源的web服务器,例如tomcat.apache等等.现在我们自己实现一个简单的web服务器,基本的功能就是用户点击要访问的资源,服务器将资源发送到客户端的浏览器.web ...
- 如何用PHP/MySQL为 iOS App 写一个简单的web服务器(译) PART1
原文:http://www.raywenderlich.com/2941/how-to-write-a-simple-phpmysql-web-service-for-an-ios-app 作为一个i ...
- 【计算机网络作业】Java UDP聊天 和 Socket编写一个简单的Web服务器
1-1 假设Tom和Jerry利用Java UDP进行聊天,请为他们编写程序.具体如下: (1).Tom和Jerry聊天的双方都应该具有发送端和接收端: (2).利用DatagramSocket与Da ...
- tomcat(1)一个简单的web server
[0]README 0.1)本文部分描述转自"深入剖析tomcat", 旨在学习 一个简单的web server 的基础知识: 0.2)for complete source ...
最新文章
- 软件工程作业 - wordcount
- Android桌面悬浮窗进阶,QQ手机管家小火箭效果实现
- Hadoop/Spark生态圈里的新气象
- 面向对象-----封装
- redis nginx session tomcat
- 条令考试小程序辅助器_计算机一级考试干货!
- Mosquito的优化——epoll优化(七)
- python时间比较好_花了半个月时间,终于找到了一款最适合的python教程
- Servlet四种访问属性--知识点
- 12-Python3 元组
- 6、python基础:文件输入输出详解
- KW代码检查规则-RLK.JNDI
- 程序员也要学英语——数词攻略
- 如何让传统行业的电商引发口碑效应并营销
- autocomplete属性在谷歌浏览器不起作用
- 【android】高仿京东商城App,集成react-native热更功能
- r5处理器_R5-4500U / R5-4600U笔记本推荐
- cairo-dock天气位置代码
- 好消息!IBM技术商用 家乐福食品可追溯 商权让消费增值
- Android项目开发实战常用知识点