python uwsgi实现的简单web服务器(8代码)

python uwsgi实现的简单web服务器,一共用了8行代码。


先说一下web领域的几个概念,主要是举例:

web服务器:apache、iis、nginx等。

web应用服务器:tomcat、jboss、weblogic、iis等。

web应用程序:jsp,asp,php,python等。


先说说wsgi,wsgi全称 web server gateway interface,是把python服务器应用程序连接到web服务器的通用协议。由于wsgi的通用性,出现了独立的wsgi程序,如我们用的uwsgi,还有Apache的mod_wsgi模块。

wsgi接口分为2个:

(1)与web服务器的接口

(2)与服务器程序的接口,这个接口很简单so easy,这是我们主要关注的。


下面是一个服务器程序的例子:

1、下载uwsgi

 

[root@wc1 Desktop]# pip install uwsgi
Collecting uwsgi
  Downloading uwsgi-2.0.14.tar.gz (788kB)
    100% |████████████████████████████████| 798kB 35kB/s 
Installing collected packages: uwsgi
  Running setup.py install for uwsgi ... done
Successfully installed uwsgi-2.0.14


2、服务器程序

这个代码就是定义了一个application函数,函数中直接调用了start_response函数响应请求(这个函数不是我们写的,是一个约定,wsgi自动传过来的,我们只需要调用一下),有2个参数:一个是状态码,一个是指定了返回消息的类型是文本html。

然后就返回一个http消息体,斜体的:hello,world!

代码保存为:web_app.py

 

 

def application(environ,start_response):
    start_response('200 OK',[('Content-Type','text/html')])
    return '<p><i>Hello,world!</i></p>'

 

3、wsgi 服务器程序

先从文件夹wsgiref中文件simple_server,导入函数make_server。

然后,从web_app.py文件导入我们上面刚写的函数application函数。

启动make_server作为wsgi的容器,第2个参数是web端口,第3个参数是就是我们上面写的application函数,对请求返会一个hello,world!

最后,通过调用容器server的serve_forever函数来运行这个容器,开始接受请求。

代码保存为:wsgi_server.py

 

 

from wsgiref.simple_server import make_server
from web_app import application

server = make_server('',8080,application)

server.serve_forever()


4、运行wsgi服务器程序

 

[root@wc1 Desktop]# python wsgi_server.py

 


5、浏览器查看网页

 



6、wsgi服务器程序的输出



 

转载于:https://www.cnblogs.com/momogua/p/8304327.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值