我正在使用基于以下原则的CakePHP网站:
deny from all
.htaccess文件阻止访问的文件夹中。304
(通过设置$this->response->modified
到文件时间戳并检查请求上的$this->response->checkNotModified($this->request)
。$this->response->file
中的MediaController
发送。 总而言之,这可以按预期工作,但是有一个问题:如果出于某种原因,错误会暴露不应公开的照片,则缓存会产生问题。
假设有权访问该文件的人登录,并且他们能够按预期查看/下载照片。然后该用户注销,其他人接管PC。他们进入公共投资组合页面,其中相同的私人照片被一些错误暴露(基本上是一个错误或人为管理员错误),但由于最后一个登录的用户确实可以访问它,它在缓存中,即使服务器返回状态代码403
,浏览器将忽略该状态代码并从缓存中提供图像。
如果我没有失去你,我的问题是:这个问题有什么办法吗?我可以强制浏览器考虑403状态代码吗?或者我的媒体控制器设置/设计中是否有其他缺陷使其无法使用?
或者这个问题太小,不太可能给小型业余摄影师造成问题?它会被认为是专业知名摄影师的(严重)安全漏洞吗?
非常感谢任何见解! :)