除非我不强制重新加载缓存浏览器,否则在浏览器中看不到上传的文件

时间:2019-05-15 11:34:11

标签: apache caching file-upload httprequest browser-cache

我面临文件上传的怪异问题。当我将新文件上传到公开可见的文件夹时,可以立即以匿名模式看到它。但是,如果我尝试以非匿名方式访问它,则服务器将以404响应,除非我进行硬刷新(即Ctrl + F5表示Mozzila)。

我已经在apache中禁用了该文件夹的缓存控制标头,但这似乎无法解决问题。在我看来,apache正在存储“实际上在请求的URL上没有文件”的信息,并将其提供给用户,除非用户清除了缓存,即使文件已在该位置上传。过去有人遇到过类似问题吗?

2 个答案:

答案 0 :(得分:0)

您可以尝试在html中的img标记后添加一些randoom编号,以使浏览器不会将其用于EXP:

<img src="image.jpg?rand=<?php echo rand(); ?>" />

应该可以解决敌人缓存问题

答案 1 :(得分:-1)

默认情况下,大多数浏览器会自动缓存图像,样式和脚本。在开发环境中绕过此方法最简单的方法是设置详细的here

缓存头

另一种绕过缓存的常见方法是设置随机查询参数(通常为?v=<random value here>)。

基于铬的浏览器在开发工具cache clear button

中也具有禁用缓存选项