【问题标题】:How to redirect in aws app runner with flask如何使用烧瓶在 aws 应用程序运行器中重定向
【发布时间】:2022-01-23 13:30:07
【问题描述】:

我正在尝试将我的烧瓶应用程序部署到 aws 应用程序运行器,在本地一切正常。但我不知道如何在应用程序运行器中重定向到我网站的另一个页面

我的代码与此类似

from flask import Flask, url_for
from waitress import serve

app = Flask(__name__)

@app.route("/hello")
def hello():
    return "Hello"

@app.route("/redirect_to")
def redirect_to():
    return "Redirected successfully!"

@app.route("/redirect_from")
def redirect_from():
    return redirect(url_for("redirect_to"))

if __name__ == "__main__":
    serve(app, host="0.0.0.0", port=8000)

应用程序运行程序提供了“默认域”,它将所有流量重定向到我的应用程序,该应用程序在 0.0.0.0:8000 上运行。当我请求 default-domain.awsapprunner.com/hello 时,它成功重定向到 0.0.0.0:8000/hello,但是当我尝试请求 default-domain.awsapprunner.com/redirect_from 时,页面会永远加载。我认为这是因为我的应用重定向到 0.0.0.0,并且应用运行程序希望所有流量都来自 default-domain.awsapprunner.com,但我不确定

解决此问题的最佳方法是什么?

【问题讨论】:

    标签: python amazon-web-services flask amazon-app-runner


    【解决方案1】:
    from flask import Flask, url_for, redirect
    from waitress import serve
    
    app = Flask(__name__)
    
    @app.route("/hello")
    def hello():
        return "Hello"
    
    @app.route("/redirect_to")
    def redirect_to():
        return "Redirected successfully!"
    
    @app.route("/redirect_from")
    def redirect_from():
        return redirect("http://YOUR_APP_URL.com/redirect_to")
    
    if __name__ == "__main__":
        serve(app, host="0.0.0.0", port=8000)
    

    【讨论】:

      猜你喜欢
      • 2015-07-05
      • 2018-05-30
      • 1970-01-01
      • 2018-10-25
      • 2019-11-13
      • 2018-12-13
      • 2016-07-12
      • 1970-01-01
      • 2020-05-23
      相关资源
      最近更新 更多