imageresizer if-modified-since 支持
Posted
技术标签:
【中文标题】imageresizer if-modified-since 支持【英文标题】:imageresizer if-modified-since support 【发布时间】:2020-12-27 12:37:47 【问题描述】:我试图弄清楚为什么 imageresizer 在执行 If-Modified-Since 时返回“HTTP/1.1 200 OK”而不是“HTTP/1.1 304 Not Modified”状态代码,与没有返回“HTTP”的 imageresizer 的请求相反/1.1 304 Not Modified”作为例外。
我只使用带有 imageresizer 大小调整模块的 IIS,命令语法如下:
curl -I --header 'If-Modified-Since: DATE-FORMAT-HERE' http://x.x.x/x.jpg
谢谢, 亚龙
【问题讨论】:
您可以尝试使用failed request tracking查看日志文件中是否有关于If-Modified-Since: DATE-FORMAT-HERE的错误信息。 你安装了DiskCache插件吗? 【参考方案1】:如果您安装了 DiskCache 插件,则将提供修改日期,但缓存文件的实际服务将委托给 StaticFileModule 或下一个处理请求的 HttpModule。 ImageResizer 本身不处理服务。这个决定是为了优化请求吞吐量,因为 StaticFileModule 使用 IIS 的本机代码来提供文件并且经过高度优化。令人惊讶的是它不支持 if-modified-since 请求。
在 Imageflow.NET Server 中,我们处理服务,因此我们可以添加对这些类型的请求的支持。我们已经支持 ETags 和 If-None-Match,它比 If-Modified-Since 更精确和可靠。您确定不能改用较新的 Imageflow.NET 服务器吗?
【讨论】:
嗨 Lilith,Imageflow.NET 服务器是否支持 If-Modified-Since? 它支持 If-None-Match,所以 If-Modified-Since 是多余的。以上是关于imageresizer if-modified-since 支持的主要内容,如果未能解决你的问题,请参考以下文章
ImageResizer 诊断插件 (resizer.debug)
imageresizer if-modified-since 支持