Python+Tornado+Apache创建应用,pythontornado


Tornado(Python的web框架)
Tornado就是我们在 FriendFeed 的 Web 服务器及其常用工具的开源版本。Tornado 和现在的主流 Web 服务器框架(包括大多数 Python 的框架)有着明显的区别:它是非阻塞式服务器,而且速度相当快。得利于其 非阻塞的方式和对epoll的运用,Tornado 每秒可以处理数以千计的连接,因此 Tornado 是实时 Web 服务的一个 理想框架。我们开发这个 Web 服务器的主要目的就是为了处理 FriendFeed 的实时功能 ——在 FriendFeed 的应用里每一个活动用户都会保持着一个服务器连接。

安装:
pip install Tornado
# 如果是Win64位,可以使用
python -m pip install Tornado

新建应用:
#!/usr/bin/env python
# -*- coding:utf-8 -*-
#

import tornado.ioloop
import tornado.web

class MainHandler(tornado.web.RequestHandler):
    def get(self):
        self.write("Hello World!")

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

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

执行此文件,在浏览器中就可以打开此页面:http://localhost:6666/


当使用Apache作为解释器时,需要添加mod_wsgi.so等模块
下载mod_wsgi:https://github.com/GrahamDumpleton/mod_wsgi/releases

选择Apache对应的版本mod_wsgi.so放入modules文件夹中
Apache配置文件增加行:
LoadModule wsgi_module modules/mod_wsgi.so

WSGIScriptAlias /web E:/LocalPython/web/
<Directory "E:/LocalPython/web">
AllowOverride All
Order deny,allow
Allow from 127.0.0.1
Deny from all
Require all granted
</Directory>

目录E:/LocalPython/web/中新建文件index.py
def application(environ,start_response):
    start_response("200 OK",[("content-type","text/html")])
    return ["<html><body>Hello world!</body></html>"]


浏览器中访问:http://localhost/web/index.py
需要默认显示index.py,可以在Apache配置文件http.conf中的DirectoryIndex新增一个文件名index.py,就可以默认显示此文件

相关内容

    暂无相关文章