XPages headTag“书签”图标 - 由于代理路由,文件不存在
Posted
技术标签:
【中文标题】XPages headTag“书签”图标 - 由于代理路由,文件不存在【英文标题】:XPages headTag 'bookmark' icon - File does not exist because of proxy routing 【发布时间】:2013-04-17 17:48:49 【问题描述】:我的 XPage headTag 代码在防火墙内正常工作。因为用户将通过代理访问此数据库,所以代理导致我的图标/书签图标出现问题。此错误出现在日志中:
文件不存在:C:/www/docs/ttt/apple-touch-icon-precomposed.png 其中“ttt”会将您定向到下面的 Domino 服务器“路径”。
我们的 Domino 服务器上的路径是:/sss/database.nsf/apple-touch-icon-precomposed.png
png 文件在我的图像资源中。我认为使用带有 href 参数和 png 文件名的 headTag 可以解决问题,特别是因为图像在数据库中。我需要对上面的路径进行硬编码吗?或者我如何动态编码?还是有完全不同的方法?谢谢!肯德拉
在 html 中我可能会这样做:
<link rel="apple-touch-icon" href="touch-icon-iphone.png" />
<link rel="apple-touch-icon" sizes="72x72" href="touch-icon-ipad.png" />
<link rel="apple-touch-icon" sizes="114x114" href="touch-icon-iphone-retina.png" />
<link rel="apple-touch-icon" sizes="144x144" href="touch-icon-ipad-retina.png" />
在 XPages 资源的 headTag 中,我正在这样做:
<xp:headTag tagName="link" loaded="true" rendered="true">
<xp:this.attributes>
<xp:parameter name="rel" value="apple-touch-icon"
loaded="true">
</xp:parameter>
<xp:parameter name="href" value="AppIcon.png"></xp:parameter>
</xp:this.attributes>
</xp:headTag>
<xp:headTag tagName="link" rendered="true" loaded="true">
<xp:this.attributes>
<xp:parameter name="rel" value="apple-touch-icon"></xp:parameter>
<xp:parameter value="72x72" name="sizes"></xp:parameter>
<xp:parameter name="href"
value="touch-icon-ipad.png">
</xp:parameter>
</xp:this.attributes>
</xp:headTag>
<xp:headTag tagName="link" rendered="true" loaded="true">
<xp:this.attributes>
<xp:parameter name="rel" value="apple-touch-icon"></xp:parameter>
<xp:parameter value="57x57" name="sizes"></xp:parameter>
<xp:parameter name="href" value="apple-touch-icon-precomposed.png"></xp:parameter>
</xp:this.attributes>
</xp:headTag>
<xp:headTag tagName="link" rendered="true" loaded="true">
<xp:this.attributes>
<xp:parameter name="rel" value="apple-touch-icon"></xp:parameter>
<xp:parameter value="114x114" name="sizes"></xp:parameter>
<xp:parameter name="href" value="touch-icon-iphone-retina.png">
</xp:parameter>
</xp:this.attributes>
</xp:headTag>
<xp:headTag tagName="link" rendered="true" loaded="true">
<xp:this.attributes>
<xp:parameter name="rel" value="apple-touch-icon"></xp:parameter>
<xp:parameter value="144x144" name="sizes"></xp:parameter>
<xp:parameter name="href" value="touch-icon-ipad-retina.png">
</xp:parameter>
</xp:this.attributes>
</xp:headTag>
【问题讨论】:
【参考方案1】:来自您的代理的消息“文件不存在”表明此请求实际上是未重定向的。成功的代理重定向永远不会导致向用户泄露代理 www 目录路径。错误显示完整路径的事实表明您的重定向失败。是时候重新访问您的代理设置了。在 Notes 方面无事可做。
【讨论】:
该路径是服务器日志中的错误,不会显示给用户。我不得不去日志找出为什么我的图像不会显示并找到它。用户只是将应用程序/网页的屏幕截图视为书签,而不是预期的 png 图像。 这仍然是一个重定向问题,因为您的代理在其自己的数据路径中查找该文件 但是,如果是重定向问题,为什么数据库中的其他所有内容以及图像资源中的页面图标(请参见下面的片段)都可以正常工作?唯一“损坏”的部分是这些用于书签/网络剪辑的 png 图像。以上是关于XPages headTag“书签”图标 - 由于代理路由,文件不存在的主要内容,如果未能解决你的问题,请参考以下文章