【问题标题】:CDN don't show new imageCDN 不显示新图像
【发布时间】:2017-12-24 18:07:34
【问题描述】:

我对 CDN 有一个小问题。当我在后台脚本中在我的网站上上传新图像时,会生成该图像的较小版本并将其移动到另一个文件夹。当我想通过 CDN 加载此文件时,它不可用,但如果我删除“cdn”。来自链接图像工作。主图像工作没有任何问题,但较小的版本没有通过 cdn。谁能告诉我为什么?

普通版的链接如下:

http://cdn.example.com/uploads/image.ext - 通过 CDN / 工作

http://example.com/uploads/image.ext/工作

小版本的链接如下所示:

http://cdn.example.com/uploads/thumbnails/image.ext - 通过 CDN / 无效

http://example.com/uploads/thumbnails/image.ext/工作

要制作较小的版本,我将普通复制到缩略图文件夹并调整大小

$image2 = new SimpleImage();
$image2->load('./uploads/thumbnails/image.ext');
$image2->resize(90,140);
$image2->save('./uploads/thumbnails/image.ext');

【问题讨论】:

  • 您使用的是什么 CDN?这听起来像是您需要与他们的技术支持人员讨论的问题。
  • Coinshost - 我的 CDN 提供商。当我发短信寻求支持时,他们告诉我:“我们不提供软件支持服务。您必须检查您的设置”
  • 您应该对CDN资产进行版本控制,如果您更新图像,CDN会缓存旧版本的副本,一种解决方法是在末尾附加查询字符串,例如?v=2

标签: php image cdn


【解决方案1】:

我是这样做的:当我从服务器加载图像时,cdn 将其缓存,现在我可以从 cdn 加载图像。我需要执行一次此操作,但现在如果每次刷新都执行其他操作。有人建议如何编辑它?

$src = 'http://cdn.example.com/uploads/thumbnails/image.ext';
    if (@getimagesize($src))
        $img_prop = array('src' => 'http://cdn.example.com/uploads/thumbnails/image.ext', 'height' => 140, 'width' => 90, 'alt' => htmlspecialchars('title'));
    else
        $img_prop = array('src' => 'http://example.com/uploads/thumbnails/image.ext', 'height' => 140, 'width' => 90, 'alt' => htmlspecialchars('title'));

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-09-12
    • 2021-11-28
    • 2016-08-20
    • 1970-01-01
    • 1970-01-01
    • 2013-04-17
    • 2017-03-22
    相关资源
    最近更新 更多