3
我正在用Flask編寫一個簡單的Web應用程序,並使用Gunicorn運行它。我想知道如何使用Varnish緩存此應用程序返回的頁面。如何使用Gunicorn和Varnish運行燒瓶?
我已經能夠使用Django應用程序,也運行在Gunicorn上,通過使用this article。這些說明包括使用一個額外的應用程序和一些中間件,但我不知道如何使用Flask做到這一點。
感謝您的建議!
我正在用Flask編寫一個簡單的Web應用程序,並使用Gunicorn運行它。我想知道如何使用Varnish緩存此應用程序返回的頁面。如何使用Gunicorn和Varnish運行燒瓶?
我已經能夠使用Django應用程序,也運行在Gunicorn上,通過使用this article。這些說明包括使用一個額外的應用程序和一些中間件,但我不知道如何使用Flask做到這一點。
感謝您的建議!
基本上,您所要做的就是在渲染Flask視圖時返回適當的緩存標頭。
舉例來說,這裏是呈現一個robots.txt
文件的簡單視圖,並指定它應該被緩存爲30天:
from flask import Flask, make_response, render_template
app = Flask(__name__)
@app.route('/robots.txt')
def robots():
response = make_response(render_template('robots.txt'))
response.headers['Cache-Control'] = 'max-age=%d' % 60 * 60 * 24 * 30
return response
警告,你需要使用括號''最大年齡=%d '%(60 * 60 * 24 * 30)'如果你不想擁有''max-age = 60「* 60 * 24 * ;) – 2015-01-05 15:41:35