问题标签 [imageresizer-diskcache]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
33 浏览

imageresizer - 具有 FIPS 合规性问题的图像调整器

我正在使用带有磁盘缓存的 imageresizer,效果很好。唯一的问题是,如果我在服务器/客户端上打开 FIPS 合规性(请参阅如何在 Windows 7 上启用 FIPS,了解如何在需要时执行此操作的示例),它根本不起作用。我可以从磁盘缓存文件夹中清除图像,并且当此设置打开时,imageresizer 不会将其填充回来。有关诊断表,请参阅 https://gist.github.com/vishnu4/ced29ca01b37957a90f6,它似乎没有显示任何错误。是否有一个很好的解决方法,还是不支持 FIPS 合规性?

0 投票
1 回答
97 浏览

imageresizer - 如何将 DiskCache 插件限制为特定的存储大小?

我正在使用 DiskCache 插件。查看文档,我看到 AutoClean 属性说

如果为 true,如果超出缓存大小限制,缓存文件夹中的项目将自动“收集垃圾”。默认为假。

缓存大小限制在哪里定义?我在 Azure 网站上的 10 GB 空间不断用完。我怎样才能限制到 8GB?

0 投票
1 回答
314 浏览

nuget - 无drm的imageresizer仍然存在红点

所以我已经安装了带有 Diskcache 插件的 Imageresizer elite nuget。我apppool通过触摸 重新启动了web.config。我清除了imagecache文件夹和浏览器缓存。但是红点仍然在图像上。同样在诊断中它说没有安装许可证。我如何验证它是否从以下位置下载了 nuget 包elite nuget

0 投票
2 回答
78 浏览

asp.net - Working with Auhtentication and Authorization for imageresizer and IVirtualImageProvider

I'm using the http://imageresizing.net/ component to display images on my webapplication.

My problem is that users need to be (forms)authenticated before retreiving an image although I allow anonymous users.

I created my own implementations for VirtualImageProvider and VirtualFile by implementing their Interfaces:

and

In the web.config I've setup the DiskCache plugin:

This /ImageCache is a VirtualDirectory within IIS.

I'm using asp.net FormsAuthentication.

The requirement is users need to be authenticated when getting images from: https://myhost/i/userprofile/(guid).

Un-authenticated users/requests are allowed to get images from: https://myhost/i/public/logos/(guid).

To achieve this, I created these folders in my webapplication:

  • /i
  • /i/public

In these folders I've added a test default.aspx page and these web.config's:

/i

/i/public

Testing with the webpages works:

/i/default.aspx --> redirects to login page. Good.

/i/public/default.aspx --> shows the page. Good.

/i/userprofile/d39a2fe0-2f1d-9750-e8d4-ebbe0f87d790.jpg?w=50&h=50 --> redirect to login page. Good.

/i/public/applogo/297/3347df8d-ef47-4280-ac2d-75a740b5898e.jpg?w=100&h=100 --> redirect to login page. Not good.

Can some one help me with this issue? I want this last image to be shown to unauthenticated users.

Many thanks in advance.

0 投票
1 回答
49 浏览

imageresizer - 是否正式支持共享网络卷上的磁盘缓存?

我们使用 Elite 许可证在多个 AWS 实例(当前为 4 个)上运行 ImageResizer。目前每个实例都有自己的本地缓存,但这意味着每个图像请求都是在每个实例上独立生成和缓存的。

这也意味着当我们部署一个新实例时,我们要么从一个空缓存开始并且在填充时该实例的性能很差,要么从现有实例复制缓存(这需要相当长的时间)

我正在考虑将缓存放在共享网络驱动器上,供所有实例访问。

这是官方支持吗,这会引起任何冲突吗?如果启用了 autoClean,所有服务器都会尝试运行清理操作吗?

0 投票
1 回答
135 浏览

imageresizer - ImageResizer DiskCache+AzureReader 奇怪的行为

我正在使用ImageResizer+Diskcache插件,我正在寻找让缓存正常工作的问题。图像要么被永久缓存(无论我上传多少次新图像),要么更改一些设置,我在某些浏览器/计算机中获取旧图像,而在其他浏览器/计算机中获取新图像。

这就是我现在的 web.config 中的内容:

和:

不确定是否可以使用现有参数实现。我的目标是最好在上传新图像时使缓存无效,而不必更改为图像提供服务的查询字符串以获取新图像。

我刚在想:

  • 也许有一个 blob 存储触发器,当替换图像已上传时,会触发一个删除该图像缓存的 webhook?
  • 或者对我的 imageresizer 应用程序的 Web 请求以在缓存中预加载新图像,以便替换旧的缓存图像???

我看过一些关于使用 IVirtualFileWithModifiedDate 的帖子,但据我了解,这会对性能产生很大影响吗?可能有 5% 的图像请求会让人上传图像并期望它立即看到它,因为大多数图像几乎没有变化,但如果图像在他们之后一天都没有显示新图像,这真的很令人沮丧已经上传了!

如果我可以IVirtualFileWithModifiedDate在图像更改而不是在每个图像请求中使用使缓存无效?那可能吗?

0 投票
1 回答
382 浏览

c# - Automatically serving @2x and @3x images using ImageResizer on MVC

Theme that we are building our websties utilizes Retina.Js on the frontend, which automatically tries to load @2x and @3x images according to users device in such way that;

If we are serving our sliders for the desktop using image resizer as follows;

/Images/home/slides/slide-1.jpg?width=300

(in which 1 is the DbId of the image)

This script automatically request the following images if the visitor is using high dpi mobile device;

/Images/home/slides/slide-1@2x.jpg?width=300

/Images/home/slides/slide-1@3x.jpg?width=300

We are using ImageResizer with SqlReader and DiskCache Plugins, so that the images read from database and cached on the disk.

When the script requests @2x and @3x naming convetion images from server, of course ImageResizer returned error for those images since it could not find an image with id '1@2x' in the db, but fortunately we were able to overcome this obstacle by using Pipeline.Rewrite;

so that now we are able serve the images which are @2x (or@3x in that manner) on the desktop resolution.

But what we could not achieve that change resolution of the desires @2x or @3x image. Since we are calling image '?width=300' with querystring parameter these images also served as desktop resolution.

We tried to change

to newly calculated value which had no effect.

Set new value to width under

property which had no effect.

Also tried to use the following with no luck;

Now the question is; is there any way to change the resize settings on the fly while using SqlReader and DiskCache plugins and serve @2x and @3x images with the correct resolutions?

Thanks in advance,

0 投票
1 回答
138 浏览

imageresizer - Imageresizer 缓存 Azure 存储配额限制

我将 ImageResizer 用作 Azure webapp,其服务计划具有 50 Gb 文件存储空间。我对 DiskCache 的设置是:

但这似乎并没有阻止 imagecache 文件夹很快达到 50 Gb 的限制。我在 blob 存储(原始大小)中有大约 100 Gb 的图像,并非所有图像都将在同一天使用,但是同一图像可以使用不同的参数多次缓存。缓存的图像平均约为 200Kb?

有没有办法阻止存储这么快填满?有没有更好的方法来使用 DiskCache?或使用其他东西?具有 250Gb 和不错的 CPU/RAM 的高级计划过于昂贵,无法证明其成本是合理的。

谢谢

0 投票
1 回答
115 浏览

imageresizer - 带有 Sitecore 的磁盘缓存插件

我有一个新的 Sitecore 8.1 实例正在运行。Sitecore 通过带有如下 URL 的媒体处理程序加载图像:“/-/media/Images/FOLDER/IMAGENAME.jpg”。Sitecore Media Handler 需要运行才能在 Sitecore 数据库中找到图像,然后返回实际的图像文件(磁盘上不存在图像)。我一直无法让 ImageResizer 处理 Sitecore 图像,因为 Sitecore 会窃取请求,而不是让 ImageResizer 处理它。说得通。

我在 Sitecore 中实现了一个自定义管道,但是效果非常好:

然后它将成功将调整大小的图像返回给客户端。但是,我不知道如何启用磁盘缓存,这样它就不必按需处理每个调整大小的请求,我也没有找到任何资源来解决这个问题。

我可以做些什么来避免我的自定义管道并启用本机 ImageResizer 以便我可以在我的场景(Sitecore Media)中使用 DiskCache 插件?或者有没有办法可以修改我的管道以使用 DiskCache 类来安装我自己的?

谢谢!

0 投票
1 回答
320 浏览

image-resizing - ImageResizer:强制将磁盘缓存更新到新文件夹

嗨:我将一个网站从一台服务器迁移到另一台服务器,并在此过程中复制了 diskcache 文件夹,但某些缓存图像没有复制。(我有磁盘缓存许可证。)其他服务器不再可访问。

原始图像都在那里,但我得到一个丢失缓存图像的丢失图像图标。我很高兴删除整个缓存并让 imageresizer 重建它,但我不确定这样做的正确方法是什么?

我尝试创建第二个缓存文件夹,并使用新文件夹的路径更新了插件部分,但它似乎不起作用(新文件夹没有被填充):

我还将 imageresizer 和 diskcache 插件从 3.3.3 更新到 4.0.5(使用 nuget),并重新启动了 Web 应用程序和网站。我做错了什么,还是遗漏了什么?

[编辑]——我重新阅读了说明并更正了我的 web.config:

但我仍然没有看到任何内容被写入新文件夹......我是否需要明确授予服务器上此文件夹的写入权限?