【问题标题】:Hiding image URL隐藏图片网址
【发布时间】:2012-03-24 13:52:43
【问题描述】:

使用 shadowbox,我将图像显示在屏幕上,如下所示:

<img src="images/thumbpic.jpg" width="100px" />

但是我正在寻找屏蔽图像的方法,以便不显示 URL 路径。否则,用户将能够通过在地址栏中输入 URL 直接访问图像。

我该怎么做?

【问题讨论】:

  • 即使像 Peter Kiss 建议的那样禁用热链接,也有上百万种方法可以获取图像。由于浏览器需要访问图像资源来显示它,所有阻止它这样做的方法都是不完善的。
  • 不管你做什么,我总是可以右键单击->将图像另存为...或点击我的 PrtSc 按钮。甚至不需要查看 URL。
  • 您需要克服隐藏图像源的问题。网页本质上是将内容发送到该人的计算机。您要问的是我如何通过电子邮件向某人发送附件但不让他们保存它。这是不可能的。

标签: php html


【解决方案1】:

这根本不可能,因为它都是客户端,并且总有办法获取该图像。 CSS 和 JS 的答案相同。

禁用盗链对你没有帮助,因为这种情况与它无关(因为你说by typing the URL into their address bar)。

【讨论】:

  • 好吧,正如 Peter Kiss 所建议的那样,您可以禁用热链接,这将大有帮助。
  • @Pekka 他可以,但正如我在回答中所写,也有解决方法。
  • @Martin:它将帮助阻止 90-95% 的盗链。总有解决方法,但这并不意味着您不应该限制损害(可以这么说)
  • @nice 无论如何,这与盗链无关。他说by typing the URL into their address bar.
  • @Martin:我仍然认为盗链。如果你愿意,你可以称之为直接链接。
【解决方案2】:

您可以将图像直接嵌入到页面中。然后您就无法对其进行热链接,并且只能从该页面访问它。

这是一个例子:http://www.sweeting.org/mark/blog/2005/07/12/base64-encoded-images-embedded-in-html

不过,我不认为所有浏览器都支持此功能。

【讨论】:

    【解决方案3】:

    为了防止直接访问图像,您应该限制对图像的访问,而不是试图隐藏它们的 URL。

    为此,您可以例如修改您的.htaccess 文件(可以在here 找到为此目的生成.htaccess 文件的工具)。

    无论如何请记住,用户始终可以(无论您做什么)将图像保存在他的计算机上,您无法阻止这一点,因为当他访问您的站点时,图像会在客户端下载。

    【讨论】:

    • 正如我在之前的评论中所说,这根本与盗链无关。再次阅读他的问题/我的评论
    • @Martin.:我说的是防止直接访问图像,这是 OP 想要的。
    • @Martin 这个答案在链接中提供了一个解决方案。不允许空白引用将阻止人们通过在浏览器中键入 URL 来获取图像,这正是 OP 想要的。话虽如此,这是一个糟糕的解决方案,因为referer 检查不可靠且容易解决,但它仍然是一个“解决方案”。
    • 感谢您的 cmets 伙计们,我如何在 iis 中实现这一点,有谁知道。我找到的所有材料都用于 apache
    • @bobo2000:那是因为你可以(部分)通过配置你的网络服务器来解决这个问题,它与 HTML 或 PHP 无关。你检查过我提供的链接吗?只需将 .htaccess 文件添加到您的目录即可。
    猜你喜欢
    • 2019-06-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-03-02
    • 2012-06-27
    相关资源
    最近更新 更多