python - webfaction 中的 Tornado Web 服务器

标签 python django tornado instagram webfaction

我从网络开发开始。我正在尝试使用 Instagram API 和 Django 开发 web 应用程序。我发现很多人都在使用 Tornado Web 服务器进行实时订阅。因此,我使用 Webfaction 作为主机并找到了此代码,以便我可以使用 Tornado Web Server 提供的“WSGI 容器”包装我的 Django 项目:

import os
import tornado.httpserver
import tornado.ioloop
import tornado.wsgi
import tornado.web
import sys
import django.core.handlers.wsgi
sys.path.append('/path/to/project')

class HelloHandler(tornado.web.RequestHandler):
    def get(self):
        self.write('Hello from tornado')

def main():
    os.environ['DJANGO_SETTINGS_MODULE'] = 'myproject.settings' # path to your settings module
    wsgi_app = tornado.wsgi.WSGIContainer(django.core.handlers.wsgi.WSGIHandler())
    tornado_app = tornado.web.Application(
            [
                    ('/hello-tornado', HelloHandler),
                    ('.*', tornado.web.FallbackHandler, dict(fallback=wsgi_app)),
            ]
    )
    http_server = tornado.httpserver.HTTPServer(tornado_app)
    http_server.listen(8080)
    tornado.ioloop.IOLoop.instance().start()

if __name__ == "__main__":
    main()

所以我在我的 Webfaction 服务器中运行这个 python 脚本,每次我尝试访问“http://mywebsite.com/hello-tornado/”似乎不起作用。我知道我正在该端口上运行 Tornado Web 服务器,但不知道如何从浏览器或类似的东西进行访问。我在这里做错了什么?感谢您的帮助和耐心。将为每个答案点赞。

编辑:我真正想做的是,我想接收来 self 通过 Tornado 使用 Instagram 实时订阅 API 进行的订阅的所有调用,为此我有一个回调 url“http://mysite.com/sub”,并且我希望能够通过Tornado接收。

最佳答案

您正在端口 8080 启动服务器,Web 浏览器默认使用端口 80,请尝试使用:http://mywebsite.com:8080/hello-tornado

如果您想使用端口 80 并且您已经在框中运行了一个 Web 服务器,您可以尝试遵循 Ali-Akber Saifee 建议,或者直接从服务器运行 WSGI 应用程序,使用 mod_python ( http://www.modpython.org ) 之类的东西,您将失去运行 Tornado 代码的能力,但 Django 可以工作。

关于python - webfaction 中的 Tornado Web 服务器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15057804/

相关文章:

python - 如何在eclipse中获取包图标?

python - 使用正确的字符编码进行抓取(python 请求 + beautifulsoup)

django - 如何设置 session 引擎?

python - IOLoop.current().run_in_executor() 和 ThreadPoolExecutor().submit() 的区别

python - keras fit_generator 用于多个批处理和多个输入

python - 如何在 bash 中将值插入到 hive 表中?

python - 导入错误 : No module named crispy-forms

python - 如何使用 django-storage sftp 下载文件?

python - 在常规 python 脚本中使用 Tornado 异步代码

python - Django异步请求远程api