我们使用Twitter Bootstrap和FontAwesome来支持图标。如何使用Fontawesome处理Azure网页部署?
当部署到我们的一个IIS服务器时,我需要添加MIME支持。
当部署到Azure时,它看起来不像我有这种能力,所以现在我的图标没有显示,因为它似乎不知道如何使用字体。
我们使用Twitter Bootstrap和FontAwesome来支持图标。如何使用Fontawesome处理Azure网页部署?
当部署到我们的一个IIS服务器时,我需要添加MIME支持。
当部署到Azure时,它看起来不像我有这种能力,所以现在我的图标没有显示,因为它似乎不知道如何使用字体。
只需添加以下到Web.config ...
<system.webServer>
<staticContent>
<remove fileExtension=".svg" />
<remove fileExtension=".eot" />
<remove fileExtension=".woff" />
<mimeMap fileExtension=".svg" mimeType="image/svg+xml" />
<mimeMap fileExtension=".eot" mimeType="application/vnd.ms-fontobject" />
<mimeMap fileExtension=".woff" mimeType="application/x-woff" />
</staticContent>
</system.webServer>
UPDATE
这个答案现在就不必要了由于FontAwesome NuGet包最近的变化。
除了公认的答案描述的解决方案,我注意到,在我的项目的字体是在〜/内容/字体,但该网站一直在寻找的字体/ Azure上的字体。
作为一种变通方法,我将字体文件复制到〜/字体(确保生成操作设置为Content
所有),所有在云中好。
上面的原始答案是必需的 - 关于web.config的更改。但这个答案也帮助我朝着正确的方向发展。我不想在不同的位置发布我的字体(〜/ fonts),所以我只是将fontawesome分成了一个较低级别的路径/ Content/fonts/bundle ...,如下所示: bundles.Add(新的StyleBundle(“〜/ Content/fonts/bundle”).include(“〜/ Content/fontawesome/font-awesome.css”)); – Ender2050
你的答案帮助了我,谢谢〜! – Franva
该解决方案有效。出于某种原因,font-awesome正在寻找根目录中的字体文件夹,即使在font-awesome.css中的url(../)正在寻找font-awesome目录中的相关字体文件夹 –
完成上述操作后,如果仍然无法正常工作,请在主题文件夹的css文件夹中检查font-awesome.css文件。
有一个链接font-awesome文件的URL。确保它指向包含新域中指向Azure站点的字体文件的文件夹,即输入完整的URL而不是../font/..
。
谢谢!我已经打了两天了! – mattruma
嗯,我试过这个,但仍然不起作用。尽管服务器端的MIME类型确实使用本地定义进行了更新。 – tofutim
web.config位于哪里? – fscore