【问题标题】:Watermark on hotlinked images?热链接图像上的水印?
【发布时间】:2009-10-15 04:39:40
【问题描述】:

我想知道是否可以在外部站点上的热链接图像上添加水印,而不是在原始站点上?我正在使用 jQuery,我可以对此做些什么吗?

谢谢大家!

【问题讨论】:

  • 这在客户端是不可能的;你能提供一些关于你的服务器环境的信息吗?
  • @Nate:为什么不是?我的意思是..您至少可以叠加水印。
  • @Mark,除非我误解了这个问题,否则 OP 只是想对从其他站点热链接的图像加水印。这根本不可能通过客户端方式实现,因为作为第三方网站,我们无法控制该客户端。
  • @Nate:哦……没关系。我以为他也拥有外部网站。

标签: jquery watermark hotlinking


【解决方案1】:

这是通过客户端技术无法实现的。您将需要基于服务器。

如果您可以访问服务器端技术,例如 ASP.NET;您可以通过 ashx 处理程序公开所有图像。这将允许您在某些图像上显示水印,或者根本不显示图像,具体取决于来源。

这是一篇关于为图像编写 ashx 处理程序的精彩文章 -- http://dotnetperls.com/ashx-handler/ https://web.archive.org/web/20160311222240/http://www.dotnetperls.com/ashx-handler

如果您使用的是基于 *nix 的服务器,@Jojo 有一些使用 php 的链接可以达到类似的效果。

在 ASP.NET 或 php 中编写了这样的处理程序后,您需要检查 HTTP Referer 以查看它是您网站上的页面还是第三方网站,然后进行必要的图像处理以生成您的水印效果。

【讨论】:

  • 链接已变为 404。
【解决方案2】:

在运行水印代码以确定是否需要水印之前,您需要检查引荐来源 HTTP 标头是否与您网站的域匹配。

【讨论】:

    【解决方案3】:

    你不能用 JQuery 做到这一点,因为当图像通过热链接提供时,它根本不涉及。您需要在服务器端进行。

    【讨论】:

      【解决方案4】:

      您必须在后端执行一些操作才能为热链接图像添加水印。

      如果您可以访问 PHP,请查看 this article

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多