【问题标题】:Browsers status bar href浏览器状态栏href
【发布时间】:2013-04-04 21:40:47
【问题描述】:

我们有一个网站有灯箱图像,但客户端不想显示浏览器状态栏中显示的 img src…

您有什么好的想法可以在所有浏览器中始终如一地实现这一目标吗?

我要补充的是,这是一个网站,我们有一个缩略图链接(a href="")到另一个更大的图像,并且它的这个链接显示在状态栏中,这是客户主要关心的问题。

我们还尝试使用我们正在使用的 CMS 的选项,该选项允许我们对图像使用模糊的时间限制 url,这看起来很棒,但加载时间严重减慢到不可接受的程度。

【问题讨论】:

  • 哪个浏览器在状态栏中显示图像src?您使用的是什么灯箱代码?
  • 通过 ajax 加载。但只要稍作努力,就可以始终访问该 URL。

标签: jquery browser status


【解决方案1】:

网页本身是否需要任何类型的身份验证?

如果是这样,那么正确的方法是将图像从公共根目录中取出并通过身份验证脚本运行访问。我认为Devot:ee 有几个这样的ExpressionEngine 工具。或者,一个简单的插件可以采用私有路径,检查登录的成员,然后提供图像。

如果页面上没有身份验证,那么残酷的事实是你们都在浪费时间,我感受到了你们的痛苦!如果是这种情况,我不会放弃“教育客户”的路线,就好像图像真的很敏感一样,那么它们需要适当的保护。

顺便说一句,您可能还想考虑discouraging hotlinking

【讨论】:

    【解决方案2】:

    您可以使用模式对话框。不完全是弹出窗口,但它会打开另一个容器。就像一个覆盖。你看到人们经常用图像做这件事,但你也可以将它用于 html。 jquery 有很多插件。

    这里有一些例子:http://jquery.com/demo/thickbox/

    我个人喜欢http://fancybox.net/

    唯一的问题是你不能使用 ajax 来调用另一个网站,但是你可以用 php 或其他任何东西创建一个页面并获取另一个页面的内容,然后在 ajax 中返回。

    你可能想为此使用 curl 之类的东西。

    【讨论】:

      【解决方案3】:

      如果您想在浏览器中显示图像,浏览器必须知道该图像的位置。因此,用户始终可以看到该图像的 URL。无法向用户隐藏它。

      虽然您可以将其从状态栏中隐藏起来,但阻止用户右键单击图像并说“在新选项卡中打开图像”(或等效项)是什么。如果您要“禁用右键单击”(这对于所有意图和目的来说都是不可能的),您可以通过 Firebug 等开发工具轻松查看图像 URL。

      因此,虽然您可能会稍微伪装一下 URL,但没有什么可以阻止真正想要找到它的人。

      【讨论】:

      • 是的,我同意史蒂夫,如果你真的想要这张图片,你会找到的。我要补充一点,这是一个网站,我们有一个缩略图链接(a href="")到另一个更大的图像,并且它的这个链接显示在状态栏中,这是客户主要关注的。
      • 相信我,我听到了。我曾与客户打过交道,他们不知道网络是如何运作的,并且对暴露他们的“资产”非常偏执。教育他们很重要,但最终你必须找到一种让他们开心的方法,不管它看起来多么愚蠢。 :)
      • 在这种情况下,一些数据是敏感的......可能是我们只是重命名了所有文件! (虽然有数千个)。再次感谢史蒂夫 :)
      【解决方案4】:

      不确定这里的目标是什么……但要回答您的问题,只需将图像写为 base64 编码字符串。例子比比皆是:http://en.wikipedia.org/wiki/Data_URI_scheme#Examples。因此可以隐藏图像的位置,实际上它甚至不必是外部可访问的,只要您在服务器上写入数据字符串即可。

      【讨论】:

      • 感谢 Sam,我们正在寻找一些可以帮助我们实现这一目标的附加组件。
      • 不需要附加组件。任何服务器端语言都可以让您轻松实现它。
      【解决方案5】:

      我将创建一个脚本,该脚本在数据属性中包含图像的位置,并在单击时绑定一个手动触发灯箱的事件,并使用该数据属性中的位置。

      【讨论】:

      • 谢谢亚历克斯,这就是我开始的想法。
      【解决方案6】:

      我认为最好的解决方案可能是对页面中的图像路径进行编码(例如使用 base64),然后使用中间的独立 PHP 脚本接收编码的文件路径并将原始图像作为字符串返回飞。

      显然,与直接提供图像相比,开销更大,但它会阻止用户知道真实的文件位置或名称。

      类似这样的:

      Hide download file location. - Redirect download

      可能是一个很好的起点。

      :)

      【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-05-15
      • 1970-01-01
      • 2011-05-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-09-17
      • 1970-01-01
      相关资源
      最近更新 更多