Tornado Documentation
› http://www.v2ex.com/tornado/
Tornado on GitHub
› https://github.com/facebook/tornado/
Tornado Gists
› http://tornadogists.org/
jecvay
V2EX  ›  Tornado

Nginx 多端口运行 Tornado 如何获取当前端口

  •  
  •   jecvay · Jan 8, 2015 · 8292 views
    This topic created in 4325 days ago, the information mentioned may be changed or developed.

    配置了 Nginx 会将请求分给 8000:8003 四个端口, 我想Tornado建一个页面, 访问这个页面的时候浏览器上能显示出这个页面的请求由哪一个端口获取了, 如何能实现这个功能?

    RequestHandler 貌似没有传进来端口号?

    12 replies  •  2015-01-09 10:31:36 +08:00
    kenneth
    kenneth
    Jan 8, 2015❤️1
    1
    app1.py 你self.write("path 1")
    app2.py 你self.write("path 2")
    试试
    jecvay
    jecvay
    OP
    Jan 8, 2015
    2
    @kenneth 这是可以的. 如果我想统一用同一个文件, 不用分成好几个py文件, 能实现吗?
    kenneth
    kenneth
    Jan 8, 2015
    3
    @jecvay 我个人觉得不行。但是也许别人知道怎么写,我写不出来。
    cloverstd
    cloverstd
    Jan 8, 2015
    4
    我想可以通过 nginx 利用 rewrite 把端口通过 HTTP 请求参数传入到 Handler 里面

    未验证
    rrfeng
    rrfeng
    Jan 8, 2015
    5
    RequestHandler 里没有,但是 ioloop 启动的设置里有啊!

    直接引用全局变量就行了啊……
    spritevan
    spritevan
    Jan 8, 2015
    6
    options.port
    9hills
    9hills
    Jan 8, 2015
    7
    你启动tornado的时候不是传了port么。。
    sivacohan
    sivacohan
    Jan 8, 2015 via Android
    8
    @9hills 我猜他是前面顶了gunicorn 然后启动多个tornado worker 现在想打出一个worker使用的端口
    jecvay
    jecvay
    OP
    Jan 8, 2015
    9
    @9hills 是, 但是我不知道怎么把这个port变量传到ioloop.start()启动的handler里面
    jecvay
    jecvay
    OP
    Jan 8, 2015
    10
    @rrfeng 这有点类似 a.py import 了 b.py, 然后 b 里面想要使用 a 里面的变量, 我不知道怎么写
    jecvay
    jecvay
    OP
    Jan 8, 2015
    11
    啊我知道了.
    可以用 tornado.options 进行传递.
    kfll
    kfll
    Jan 9, 2015
    12
    每个实例启动的时候给一个独一无二的环境变量
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   4315 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 37ms · UTC 08:24 · PVG 16:24 · LAX 00:24 · JFK 03:24
    ♥ Do have faith in what you're doing.