gpt4 book ai didi

drupal - 当原始图像文件不存在时,如何提供一个默认的图像文件供ImageCache使用和处理?

转载 作者:行者123 更新时间:2023-12-01 15:45:40 25 4
gpt4 key购买 nike

是否可以让 ImageCache 使用默认图像?还是使用htaccess提供默认图片给imagecache处理?我们的一些客户站点大于 4GB,处理我们开发不需要的所有图像非常痛苦。我试过使用 htaccess,但 ImageCache 不处理文件,只是最终使用搞砸了布局的文件尺寸。

有什么想法吗?

最佳答案

据我所知,ImageCache 会响应类似

的 URI
http://www.yourdomain.com/default/files/imagecache/set/images/pic.png

其中 http://www.yourdomain.com 是您的域,files/imagecache 是图像缓存路径,set 是预定义的一组图像处理设置,其余部分(此处:images/pic.png)是原始图像的实际相对路径。

因此,如果 pic.png 不存在,则应将另一个文件 (default.png) 提供给 ImageCache。不存在文件的 .htaccess 解决方案可能是:

RewriteCond %{REQUEST_fileNAME} !-f
RewriteRule ^([^.]+)\.[gif|jpg|png]$ /images/default.png [L]

现在 ImageCache 请求不存在的 images/pic.png 并获取 images/default.png 服务,处理它并将其保存在 default/files/imagecache/set/images/pic.png.

好吧,至少这是我的理论。

问候,保罗

-###########-

关于第一条评论的编辑:好的,我查看了模块。在 imagecache.module 中,第 386 行启动辅助函数 _imagecache_cache($presetname, $path)。在此函数中检查原始文件是否存在(第 403 行)。更改此 block

  // Check if the path to the file exists.
if (!is_file($src) && !is_file($src = file_create_path($src))) {
watchdog('imagecache', '404: Unable to find %image ', array('%image' => $src), WATCHDOG_ERROR);
header("HTTP/1.0 404 Not Found");
exit;
};

  // Check if the path to the file exists.
if (!is_file($src) && !is_file($src = file_create_path($src))) {
watchdog('imagecache', '404: Unable to find %image ', array('%image' => $src), WATCHDOG_ERROR);
/*header("HTTP/1.0 404 Not Found");
exit;*/
$src = 'sites/all/modules/imagecache/sample.png';
};

(注意:我将原始代码行保留为注释。您可以将 $src 设置为您想要的任何默认文件。)

关于drupal - 当原始图像文件不存在时,如何提供一个默认的图像文件供ImageCache使用和处理?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3073330/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com