首页 新闻 会员 周边 捐助

网站在IIS 10 和IIS Express服务器上的显示效果不一致,IIS 10无法显示Bootstrap元素,但Express可以

0
悬赏园豆:20 [已解决问题] 解决于 2016-04-08 11:16

如题,网站在IIS 10上无法显示Bootstrap元素,但是在IIS Express上可以奇怪的是通过IIS 10服务器访问首页时,Bootstrap样式正常,但是Glyphicons 字体图标无法显示,访问其他页面时,连Bootstrap样式都不能正常显示了,Glyphicons 字体图标就更不用说了。IE,Chrome,UC PC版,Edge都是这样显示。这些情况在IIS Express下正常。昨天下午突然出现了这种情况,之前都正常。还有,我用VS发布了之前做的一些网站,哪些网站也是在IIS Express下正常,但到了IIS 10上就出现了类似的情况。用的是Win10+Visual Studio2015。

,试过了网上的一些方法,但都不行!下面是我试过的方法:

 

(1)给IIS 10添加.svg  image/svg+xml和.woff文件 application/x-font-woff 文件类型(这两种文件类型IIS 10里面本来就有)

(2)在项目的Web.config配置文件里面的system.webServer节加

<staticContent>

<remove fileExtension=".woff"/>

<mimeMap fileExtension=".woff" mimeType="application/x-font-woff" />

</staticContent>

(3)直接引用字体图标的CSS样式文件font-awesome

@*@Styles.Render("~/Content/fontawesome")*@

<link href="~/Content/font-awesome/css/font-awesome.min.css" rel="stylesheet" />

(4)将项目下的一些资源文件,比如javastrip脚本,图片资源,font资源直接覆盖到IIS服务器的网站目录下,也没反应。

这些方法统统不行。所以来此求救。希望有人能帮我解决,或者提供一点思路!不胜感激!

下面是一些相关的图片:

 

问题补充:

茫茫江浸月的主页 茫茫江浸月 | 初学一级 | 园豆:188
提问于:2016-04-08 09:41
< >
分享
最佳答案
0

问题解决了!!!

用F12调试时发现在IIS和IIS Express里面link地址不一样:

在IIS 10里面的link链接

<link href="/Content/css?v=MDbdFKJHBa_ctS5x4He1bMV0_RjRq8jpcIAvPpKiN6U1" rel="stylesheet"/>

<script src="/bundles/modernizr?v=wBEWDufH_8Md-Pbioxomt90vm6tJN2Pyy9u9zHtWsPo1"></script>

<link href="/Content/font-awesome/css/font-awesome.min.css" rel="stylesheet" />

在IIS Express里面的link链接
<link href="/Content/bootstrap.css" rel="stylesheet"/>
<link href="/Content/site.css" rel="stylesheet"/>

<script src="/Scripts/modernizr-2.6.2.js"></script>

<link href="/Content/font-awesome/css/font-awesome.min.css" rel="stylesheet" />

 

然后在IE 11里面按住Alt键,单击

<link href="/Content/css?v=MDbdFKJHBa_ctS5x4He1bMV0_RjRq8jpcIAvPpKiN6U1" rel="stylesheet"/>

里面的链接地址,发现没法打开。但是用同样的方法单击

<link href="/Content/bootstrap.css" rel="stylesheet"/>

里面的链接地址,可以打开,并看到里面的内容。

恍然大悟,link地址有问题!!!

到_Layout.cshtml布局页里面,检查

Styles.Render("~/Content/css"),

Scripts.Render("~/bundles/modernizr")

都没有问题,后来直接把这两个注释了,只引用了

<link href="~/Content/bootstrap.min.css" rel="stylesheet" />

就好了!!!

还是要谢谢@吴瑞祥回复!俗话说求人不如求己嘛!有时候自己动手就可以了!

相关截图:

 

 

茫茫江浸月 | 初学一级 |园豆:188 | 2016-04-08 10:54
其他回答(1)
0

按F12

收获园豆:20
吴瑞祥 | 园豆:29449 (高人七级) | 2016-04-08 09:51

F12调试时发现了这个,不知道有没有用:
在IIS 10里面的link链接

<link href="/Content/css?v=MDbdFKJHBa_ctS5x4He1bMV0_RjRq8jpcIAvPpKiN6U1" rel="stylesheet"/>

<script src="/bundles/modernizr?v=wBEWDufH_8Md-Pbioxomt90vm6tJN2Pyy9u9zHtWsPo1"></script>

<link href="/Content/font-awesome/css/font-awesome.min.css" rel="stylesheet" />

在IIS Express里面的link链接
<link href="/Content/bootstrap.css" rel="stylesheet"/>
<link href="/Content/site.css" rel="stylesheet"/>

<script src="/Scripts/modernizr-2.6.2.js"></script>


<link href="/Content/font-awesome/css/font-awesome.min.css" rel="stylesheet" />

 

 

 

支持(0) 反对(0) 茫茫江浸月 | 园豆:188 (初学一级) | 2016-04-08 10:02

@茫茫江浸月: 应该是你用了Bundle的原因.在Bundle配置里看看吧.不会用的话就全删了.一个一个文件引用就好,在App_Start文件夹里

支持(0) 反对(0) 吴瑞祥 | 园豆:29449 (高人七级) | 2016-04-08 10:39

@吴瑞祥: 好了,我直接把

Styles.Render("~/Content/css"),

Scripts.Render("~/bundles/modernizr")

删除了,改用link了。简单粗暴野蛮好用!

现在问题解决了,不过Bundle我得仔细研究研究了!谢谢你的提示!豆子给你了!

支持(0) 反对(0) 茫茫江浸月 | 园豆:188 (初学一级) | 2016-04-08 11:15
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册