1. 程式人生 > >在pythonanywhere.com上部署tornado Web服務

在pythonanywhere.com上部署tornado Web服務

    pythonanywhere.com網站提供了python程式設計的服務平臺,可以選擇多上Python版本使用,還可以輕鬆部署自己寫的Web伺服器。該網站自動支援Flask、Bottle等框架。但近日,本人臨時需要部署一個用tornado框架搭建的小型Web伺服器,嘗試在該網站上部署,結果也部署成功。現將部署過程記錄如下:

      1.安裝相關庫:嘗試直接安裝Tornado失敗,提示許可權不夠。後來,建立自己的虛擬環境安裝成功,具體命令如下:

mkdir /home/username/torweb
cd /home/username/torweb
virtualenv --python=python3.5 myvenv
source myvenv/bin/active

pip3 install tornado pony

     這樣就成功安裝了tornado的最新庫,和伺服器使用的ponyorm庫。

    2.修改tornado的啟動程式,注意:這裡以WSGI方式部署

#!/usr/bin/env python
# -*- coding: utf-8 -*-

import sys
import settings
from tornado import web, httpserver, ioloop
from tweb.url_map import load_handlers
import tornado.wsgi

handlers,domain_handlers = load_handlers(settings.HDL_DIR)


application = tornado.wsgi.WSGIApplication(handlers, **settings.web_server)
for (host_pattern, handlers) in domain_handlers:
    application.add_handlers(host_pattern, handlers)

   3.新建web伺服器,重點配置如下圖:

注意:標註4處,應正確設定對應的虛擬環境。

    4.修改上圖中標註2處的py檔案(直接單擊標註處的連結即可),其內容如下:

import sys

path = '/home/username/torweb/mytask'
if path not in sys.path:
    sys.path.append(path)

from manage import application

5.過載web伺服器即可。