Tra*_*vis 9 python apache django caching mod-wsgi
我通过mod_wsgi在Apache中运行Django.我相信Django正在缓存我的服务器端页面,这导致一些功能无法正常工作.
我有一个倒数计时器,通过获取当前服务器时间,确定剩余倒计时时间,并将该数字输出到HTML模板.然后,javascript倒计时器接管并运行用户的倒计时.
当用户刷新页面或使用倒数计时器导航到不同的页面时,会出现问题.计时器似乎偶尔跳到不同的时间,通常在每次刷新时反复回到同一时间.
使用HTTPFox,页面没有从我的浏览器缓存加载,所以它看起来像Django或Apache正在缓存页面.有没有办法禁用此功能?我不会有足够的流量来担心缓存脚本输出.或者我为什么会这样做完全错了?
[编辑]从下面的帖子看,在Django中看起来禁用了缓存,这意味着它必须在其他地方发生,也许在Apache中?
[编辑]我对正在发生的事情有一个更全面的描述:对于服务器的前7个(或左右)请求,页面由脚本呈现并返回,尽管这7个页面中的每个页面似乎都被高速缓存,因为它出现以后.在第8个请求中,服务器提供第一页.在第9个请求中,它提供第二页,依此类推.这将一直持续到我重新启动apache,然后重新开始进程.
[编辑]我已经将mod_wsgi配置为一次只运行一个进程,这会导致计时器在每种情况下重置为相同的值.有趣的是,我的页面上有另一个组件,在每个请求上显示一个随机图像,使用顺序('?'),并且每次都刷新不同的图像,这表明缓存发生在Django而不是Apache中.
[编辑]根据之前的编辑,我回过头来查看了相关的views.py文件,发现倒计时开始变量是在视图函数之外的模块中全局设置的.在视图函数中移动该设置解决了问题.所以事实证明它毕竟不是一个缓存问题.感谢大家对此的帮助.
根据我在Apache中使用mod_wsgi的经验,它们极不可能导致缓存.有几件事要尝试:
| 归档时间: |
|
| 查看次数: |
8828 次 |
| 最近记录: |