我可以为下载的 url 文件使用自定义徽标吗?

Posted

技术标签:

【中文标题】我可以为下载的 url 文件使用自定义徽标吗?【英文标题】:Can I use a custom logo for downloaded url files? 【发布时间】:2014-07-12 19:57:16 【问题描述】:

我的网站可以选择通过单击链接将快捷方式 (.url) 文件下载到用户的 PC 上。这个想法是用户可以将其保存到他们的桌面,并将其用作站点的快捷方式以供将来访问。 (我知道这很古怪,但这是我的客户想要的。)

我有一个我希望使用的图标 (.ico) 文件,但每当用户下载该文件时,该图标都不会显示。

我尝试在记事本中打开 URL 文件并编辑 IconFile 值以指向服务器本身的图标文件。

[000214A0-0000-0000-C000-000000000046]
Prop3=19,2
[InternetShortcut]
URL=http://example.com/
IDList=
HotKey=0
IconFile=http://example.com/favicon.ico
IconIndex=0

但是这似乎不起作用。任何人都可以建议可能出了什么问题,或者我该如何解决它。

【问题讨论】:

【参考方案1】:

MS Windows 不会从 Internet 加载使用“IconFile”指定的图标文件(我猜是出于安全原因)。

它只从

加载“IconFile” 如果路径是文件路径,则为本地文件,或 本地网络缓存,如果协议是 http:

您可以通过将 Internet Explorer 导航到 http://example.com/favicon.ico(现在文件在缓存中)然后刷新您的 *.url 文件(通过右键单击 -> 编辑 -> [进行虚假更改])来验证这一点

现在应该显示图标。现在清除你的 IE 缓存,刷新 *.url 文件,图标不见了(替换为默认浏览器的图标)

所以,

您的客户端可以容忍在未缓存图标时显示默认图标,或者 您必须提供本地副本。

【讨论】:

我没有得到你描述的行为。当我在 IE 中导航到 .ico 文件,然后对 url 文件进行更改时,该图标仍然是默认浏览器图标。 我刚刚在不同的服务器上尝试过,我确实得到了你在那里描述的行为。仅使用浏览器的缓存对我来说就足够了——我只是希望它在两台服务器上都这样做。好像有什么东西阻止它被缓存。 请检查 Temporary Internet Files 文件夹中的 *.ico 文件。如果不存在,则缓存被禁用。 奇怪的是 .ico 文件存在于一台服务器上,而另一台则没有。服务器本身是否可以通过某种方式阻止图标被缓存? 尝试通过工具菜单删除所有临时 Internet 文件并重新加载图标。我相信你不能在 IE 中完全关闭缓存,所以图标应该会显示出来。

以上是关于我可以为下载的 url 文件使用自定义徽标吗?的主要内容,如果未能解决你的问题,请参考以下文章

office2016不能自己自定义安装路径吗

创建自定义验证电子邮件页面 URL 和自定义重置密码页面 URL

Tableau Desktop 企业日常问题18如何下载自定义的地理信息文件?(自定义经纬度)

page.tpl.php中的Drupal 7自定义徽标未显示在所有页面上

我可以为 Angular CLI 生成的源创建自定义模板吗

office365安装2016的时候怎么才能自定义安装