raspberry pi搭建python web server

基于python的web server有不少,好比:django、web.py、tornado、fastcgi等。通过一番比较我选择使用tornado,使用tornado的缘由有以下几个:一、tornado是轻量级的web server,二、异步I/O处理链接请求,三、tornado是facebook开源项目之一。因为个人raspberry pi使用的是raspbian操做系统,而raspbian操做系统源上有python-tornado和python3-tornado二进制包,因此直接使用命令$sudo apt-get install python3-tornado python-tornado完成安装。完成安装后使用tornado官方网站上提供的测试代码来测试web服务器是否好用。测试代码以下:python

#!/usr/bin/env python3

import tornado.ioloop
import tornado.web

class MainHandler(tornado.web.RequestHandler):
    def get(self, name):
        self.write("Hello, world")

application = tornado.web.Application([
    (r"/(.*)", MainHandler),
])

if __name__ == "__main__":
    application.listen(9090)
    tornado.ioloop.IOLoop.instance().start()web

其中web服务器监听端口是9090,全部的web请求由MainHandler类进行处理。在MainHandler类中包含一个get()方法,在该方法中向发出请求的web客户端输出"Hello,world"字符串。django

在raspberry pi上运行该python脚本,以后经过命令netstat查看当前系统的监听端口,发现9090端口被监听。浏览器

pi@raspberrypi :~/test$ netstat -ltn
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address           Foreign Address         State      
tcp        0      0 0.0.0.0:9090            0.0.0.0:*               LISTEN    
服务器

此时,在PC机上使用浏览器访问raspberry pi上的9090端口,就能够获得"Hello,world"字符串显示在浏览器页面中。app

相关文章
相关标签/搜索