使用VSV10开发ASP.NET MVC4 Web应用程序时,使用Mvc.JQuery.Datatables Nuget, 我发现引用的EmbeddedResourceVirtualPathProvider NuGet运行得很漂亮 在我的开发盒上,但在我的生产盒上惨遭失败。
生产框是Windows 2003,安装了IIS6和.NET 4.0。
我搜索了很多关于SO和谷歌搜索的内容,但在实施建议的解决方法后, 它仍然失败:
这就是我所做的。
AppInitialize
但它仍然没有提供所有文件。我获得了嵌入式部分视图,但没有 嵌入的css,js和jpg文件。
我的web.config有一个StaticFileHandler的条目,如下所示:
<system.webServer>
<handlers>
<add path="*.css" verb="GET" name="Static css" type="System.Web.StaticFileHandler" />
<add path="*.js" verb="GET" name="Static js" type="System.Web.StaticFileHandler" />
<add path="*.jpg" verb="GET" name="Static jpg" type="System.Web.StaticFileHandler" />
<add path="*.gif" verb="GET" name="Static gif" type="System.Web.StaticFileHandler" />
</handlers>
</system.WebServer>
我似乎错过了一些关键的东西。有什么建议吗?
答案 0 :(得分:0)
使用IIS6时,#1-3中列出的所有项目都是必需的,但您还需要
认识到IIS6在httpHandlers
部分中将其处理程序定义为system.web
,
而IIS7称它们为handlers
,它们位于配置文件的system.webServer
部分。
因此,您需要添加以下内容才能使其在IIS6中正常工作
<system.web>
....
<httpHandlers>
<add path="*.css" verb="GET" type="System.Web.StaticFileHandler" />
<add path="*.js" verb="GET" type="System.Web.StaticFileHandler" />
<add path="*.jpg" verb="GET" type="System.Web.StaticFileHandler" />
<add path="*.gif" verb="GET" type="System.Web.StaticFileHandler" />
</httpHandlers>
</system.web>