Python Heroku上的Zombie SharedDataMiddleware

2024-04-24 12:18:28 发布

您现在位置:Python中文网/ 问答频道 /正文

我在Heroku上设置一个烧瓶应用程序。在我添加静态文件之前,一切正常。我用的是:

from werkzeug import SharedDataMiddleware
app = Flask(__name__)
app.wsgi_app = SharedDataMiddleware(app.wsgi_app, {'/static': os.path.join(os.path.dirname(__file__), 'static') })

我将在应用程序的第一个适当时间部署静态文件herokuapp.com/static. 但是在最初的部署之后,Heroku上的文件永远不会改变。如果我将最后一行改为:

^{pr2}$

静态文件的新URL,herokuapp.com/assets,然后我可以看到更新的文件。在

好像文件的镜像卡在了系统中。我已经改变了四次,仍然可以访问所有的网址。在


Tags: 文件pathfromcomapp应用程序wsgiheroku
1条回答
网友
1楼 · 发布于 2024-04-24 12:18:28

SharedDatadleware默认发送Cache-Control和{}HTTP头,这意味着您的web浏览器甚至可能不会向服务器发送请求,而只使用缓存中的旧文件。尝试disabling the cache

app.wsgi_app = SharedDataMiddleware(
    app.wsgi_app,
    {'/static': os.path.join(os.path.dirname(__file__), 'static')},
    cache=False)

Flask对静态文件也是这样。到disable it那里:

^{pr2}$

相关问题 更多 >