bpking1 / embyExternalUrl

some emby/jellyfin scripts
MIT License
687 stars 123 forks source link

Jellyfin图片缓存刮削后不更新 #217

Closed yizhiakuya closed 2 months ago

yizhiakuya commented 3 months ago

是这样,我在8091里面刮削的图片,实际jellyfin也更新了,8096可以看到更新后的图片,但是8091只有在删除embyCache和浏览器缓存之后再访问才会更新

chen3861229 commented 3 months ago

这个没啥好的解决方案,最主要是源服务内部做的变更,nginx 这边没法知道,且 nginx 本身对缓存的更新模块收费,用第三方模块需要自己编译,就会比较麻烦了, emby.conf 中有一些注释,

# this need compile proxy_cache_purge module
# if ($uri ~* ^(.*)/Primary/Delete$) {
#     set $tmp_proxy_cache_key $1/Primary;
#     set $purge_method 1;
# }
# this need compile proxy_cache_purge module
# proxy_cache_purge $purge_method;
 # add_header X-Cache-Purge $purge_method; # for debug

虽然加了个折中方案,不依赖其他模块,但是批量操作起来估计有难度(也只能提到的删除embyCache下的内容了)。。。如果需要更新的图片缓存不多的话可以尝试下, 自己访问下图片的 URL 然后加上参数 nocache=1 然后再次访问下不带 nocache=1 的原 URL 就会覆盖当前单个图片缓存了 97f0084f2d5da8d3835ffe723e10e077c2290eb3