python制作一个简单的服务器,【Python】 做一个简单的 http 服务器

# coding=utf-8

'''

Created on 2014年6月15日

@author: Yang

'''

import socket

import datetime

# 初始化socket

s = socket.socket()

# 获取主机名, 也可以使用localhost

# host = socket.gethostname()

host = "localhost"

# 默认的http协议端口号

port = 80

# 绑定服务器socket的ip和端口号

s.bind((host, port))

# 服务器名字/版本号

server_name = "MyServerDemo/0.1"

# 缓存时间, 缓存一天

expires = datetime.timedelta(days=1)

# GMT时间格式

GMT_FORMAT = '%a, %d %b %Y %H:%M:%S GMT'

# 相应网页的内容

content = '''

MyServerDemo/0.1

coming soon

'''

# 可同时连接五个客户端

s.listen(5)

# 服务器循环

while True:

# 等待客户端连接

c, addr = s.accept()

print 'Got connection ', addr, '\n'

# 显示请求信息

print '--Request Header:'

# 接收浏览器的请求, 不作处理

data = c.recv(1024)

print data

# 获得请求的时间

now = datetime.datetime.utcnow()

# 相应头文件和内容

response = '''HTTP/1.1 200 OK

Server: %s

Date: %s

Expires: %s

Content-Type: text/html;charset=utf8

Content-Length: %s

Connection: keep-alive

%s''' % (

server_name,

now.strftime(GMT_FORMAT),

(now + expires).strftime(GMT_FORMAT),

len(content),

content

)

# 发送回应

c.send(response)

print '--Response:\r\n', response

c.close()

9c164aeb5acbb011da37107a2c8905ee.png

e54352a51dc7e12dad02a7eb71082c58.png

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值