By default, Tornado puts a Cache-Control: public
header on any file served by a StaticFileHandler
. How can this be changed to Cache-Control: no-cache
?
Asked
Active
Viewed 1.1k times
2 Answers
48
The accepted answer does not work for Chrome. Subclass StaticFileHandler
using the following:
class MyStaticFileHandler(tornado.web.StaticFileHandler):
def set_extra_headers(self, path):
# Disable cache
self.set_header('Cache-Control', 'no-store, no-cache, must-revalidate, max-age=0')

0xdabbad00
- 998
- 2
- 11
- 22
-
1This worked for me on Safari and Chrome for Mac OS. +1 – Randall Cook Mar 28 '14 at 19:49
17
Looking into the tornado/web.py it seems that the easiest way is to subclass the StaticFileHandler and override the set_extra_headers method.
def set_extra_headers(self, path):
self.set_header("Cache-control", "no-cache")

sigman
- 1,291
- 12
- 13