繁体   English   中英

使用Gunicorn和Nginx进行烧瓶重定向

[英]Flask Redirection with Gunicorn & nginx

我的烧瓶显示出奇怪的重定向行为。 我不知道我在做什么错。 如果我将所有的html files加载为'/' route ,则所有的html files可以正常工作,但是重定向无法正常进行,并且出现以下错误消息:

ERR_NAME_NOT_RESOLVED
DNS address could not be found

也可以使用以下4条路径来重现该错误:

@app.route('/')
def index():
    return 'The index page'

@app.route('/projects/')
def projects():
    return 'The project page'

@app.route('/about')
def about():
    return 'The about page'

@app.route('/main')
def main():
    return 'The main page'

仅在浏览器中输入服务器ip时,No 1将起作用。

No 2将像这样工作:ip / projects /但不喜欢这个ip / projects

No 3的运作方式如下:ip / about,但不像这样ip / about /

4号根本不起作用! 为什么?

我是nginx代理的runnung gunicorn。 提前谢谢了!

从路由角度来看, /abc//abc是两条不同的路由。 但是您总是可以告诉flask,那不是您想要的。 您可以使用app对象在代码中进行全局更改

app.url_map.strict_slashes = False

或者您可以使用strict_slashes=False对此类行为进行route基础映射

@app.route('/projects/', strict_slashes=False)
def projects():
    return 'The project page'

现在,由于方法名称,#4可能无法正常工作。 所以改变

@app.route('/main')
def main():
    return 'The main page'

@app.route('/main')
def main_route():
    return 'The main page'

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM