什么是网站的简单/最小browserconfig.xml

时间:2014-04-13 13:36:57

标签: internet-explorer windows-8 http-status-code-404

我不想做任何关于Windows 8和固定的特殊或棘手的事情,我只是不想看到404 Not Found消息,因为IE寻找browserconfig.xml滚动在我的日志文件中。

我是否可以在我的root中放入一个简单的browserconfig.xml文件来满足IE,并且如果我决定稍后为Window 8添加更好的支持,那么它是一个好的占位符吗?

6 个答案:

答案 0 :(得分:73)

我将元代码添加到我的脑海中,但我仍然收到了browserconfig.xml请求。

所以我认为最好的方法是;根据他们:http://msdn.microsoft.com/browserconfig.xml

<?xml version="1.0" encoding="utf-8"?>
<browserconfig>
    <msapplication>
    </msapplication>
</browserconfig>

答案 1 :(得分:57)

Microsoft的MSDN页面Browser configuration schema reference上有一个示例。

您将browserconfig.xml文件放在Web服务器的根文件夹中。

您还可以包括:

<meta name="msapplication-config" content="none"/>

在您的HTML中,以防止IE查找此文件,如果这是一个可能适用的选项。

答案 2 :(得分:39)

最简单的解决方案实际上就是使用官方的Microsoft Browserconfig.xml文件构建器:http://www.buildmypinnedsite.com

您可以构建一个完整的xml文件,只需3个步骤即可获得徽标的所有大小的图像。我只是为我的网站做了它,只用了2分钟。

它将生成一个完整的browserconfig.xml文件,并在一个zip文件中提供所有标题图像。

修改2015年1月8日:我刚找到另一个选项:http://realfavicongenerator.net/

这个网站的好处是生成你的browserconfig.xml和所有你的apple-touch- *图标,favicon等基本上是一站式网站,用于生成一切。

答案 3 :(得分:17)

添加meta标记可能有效,也可能无效。我们添加了此标记,但我们仍然始终收到browserconfig.xml个请求的404错误。最后我们决定做一个简单的xml。

我们的browserconfig.xml看起来像这样,基本上只是说明了4张图片的位置。

<?xml version="1.0" encoding="utf-8"?>
<browserconfig>
    <msapplication>
        <tile>
        <square70x70logo src="/mstile-70x70.png"/>
        <square150x150logo src="/mstile-150x150.png"/>
        <wide310x150logo src="/mstile-310x150.png"/>
        <square310x310logo src="/mstile-310x310.png"/>
        <TileColor>#8bc53f</TileColor>
        <TileImage src="/mstile-150x150.png" />
        </tile>
    </msapplication>
</browserconfig>

并把它放在你的HTML中:

<meta name="msapplication-config" content="/browserconfig.xml" />

现在没事了

答案 4 :(得分:4)

第三种方法可以防止browserconfig.xml填充404错误的日志文件。您可以从服务器返回空值(444)并关闭该位置的日志记录。这是相关的,因为favicon.ico做同样的事情忽略元头标签和浏览器调用它(也生成404)。问题大于这个不需要的文件。

针对您在browser.xml上防止日志中出现404错误的具体问题 - 对于NGINX,您可以在/etc/nginx/snippets/中创建一个新文件,然后在#include /etc/nginx/sites-available/example.org中创建该文件文件在服务器块内。

示例:/etc/nginx/snippets/block-known-errors.conf具有以下内容:

location ~* /(favicon.ico|browserconfig.xml)$
   { access_log off; log_not_found off; return 444; }

然后在/etc/nginx/sites-available/example.org的配置中添加:

include /etc/nginx/snippets/block-known-errors.conf;

注意NGINX中的位置规范使用的是正则表达式,并且不敏感。因为它是location必须在server规范中。

实际上,我们实际上将我们的包含嵌套在/etc/nginx/snippets/文件夹中,并根据安全/技术要求为特定网站提供一个全局包含和其他包含。这允许我们的端点通过添加一个文件或编辑现有文件来管理我们的日志,几乎可以立即修复全局问题。

用OSSEC和ELK堆栈可以看到很多东西。

我确信Apache中的mod_rewrite也可以这样做。

答案 5 :(得分:3)

您也可以将其添加到HTML并将配置设置为“none”,如下所示:

<meta name="msapplication-TileColor" content=" #009900" />
<meta name="msapplication-square70x70logo" content="images/smalltile.png" />
<meta name="msapplication-square150x150logo" content="images/mediumtile.png" />
<meta name="msapplication-wide310x150logo" content="images/widetile.png" />
<meta name="msapplication-square310x310logo" content="images/largetile.png" />
<meta name="msapplication-config" content="none"/>

来源:

http://samples.msdn.microsoft.com/iedevcenter/PinnedSites/scenario1.html https://msdn.microsoft.com/library/dn320426