HTTP 错误 403.14 - 禁止 - MVC4 .net 4.5 捆绑包
Posted
技术标签:
【中文标题】HTTP 错误 403.14 - 禁止 - MVC4 .net 4.5 捆绑包【英文标题】:HTTP Error 403.14 - Forbidden - MVC4 .net 4.5 bundles 【发布时间】:2012-11-20 21:38:02 【问题描述】:我使用 razor 引擎使用 .net 4.5 制作了一个 MVC4 应用程序。使用 Visual Studio 在本地运行时效果很好。
当我在 windows server 2008 R2 上部署到 IIS(所有 windows 更新完成)时,我的捆绑包似乎不起作用并且 CCS 未加载。我尝试在服务器上查看该站点,查看的源代码转到了 css 的捆绑链接,它加载了一些 css,然后出现 IIS 错误:
HTTP 错误 403.14 - 禁止 Web 服务器配置为不 列出这个目录的内容。
我尝试过的:
1) 确保已安装 .net 4.5。
2) 将<modules runAllManagedModulesForAllRequests="true"/>
添加到我的 web.config
3)在cmd中运行%windir%\Microsoft.NET\Framework64\v4.0.30319\aspnet_regiis.exe -ir
4) 检查我的应用程序池是否设置为集成模式
5) 检查它是否设置为使用 .net 4
【问题讨论】:
您提供资产的文件夹的权限是什么? @John 应用程序池和 ISUSR 都对该文件夹具有读取权限。 你能显示捆绑代码吗?您是否使用正确的目标框架检查编译调试是否为假? 我遇到了一些问题。有什么提示吗?还有 Windows 2008 R2 和 IIS 7 【参考方案1】:您会在这里找到答案:ASP.NET MVC framework 4.5 CSS bundles does not work on the hosting
简短的回答是确保您的捆绑包名称不会与您网站中的路径名称冲突。
【讨论】:
确实为我节省了很多时间...这解决了我的问题,我的“~/Content/Template”包与我的物理文件夹冲突。我需要做的就是重命名我的包的名称。 很高兴我的回答对您有所帮助。一天下午,这个让我发疯了几个小时!! 谢谢。你也帮了我!顺便说一句,你知道为什么这只发生在 css 包中吗?我在 js 包中有相同的配置,它工作正常。【参考方案2】:这为我解决了(解决方案来自MVC4 HTTP Error 403.14 - Forbidden)
<system.webServer>
<modules runAllManagedModulesForAllRequests="true"/>
</system.webServer>
【讨论】:
虽然它可能会解决问题,但这就像用火箭发射器杀死苍蝇一样。runAllManagedModulesForAllRequests
对您的站点有性能影响,因为所有托管模块都将针对所有请求运行,包括对图像等静态文件的请求。【参考方案3】:
确保在您的 web.config 中启用了对“虚拟”包路径的匿名访问。
例如,如果您的样式包类似于“~/content/blahblah”,而您的 javascript 包类似于“~/scripts/blahblah”,则您必须在您的网络配置:
<configuration>
...
<location path="content">
<system.web>
<authorization>
<allow users="?" />
</authorization>
</system.web>
</location>
<location path="scripts">
<system.web>
<authorization>
<allow users="?" />
</authorization>
</system.web>
</location>
...
</configuration>
这样,任何用户对虚拟路径“~/content”或“~/scripts”的任何请求都将被批准,CSS和JS请求将被处理。
【讨论】:
【参考方案4】:另一个导致 403.14 的潜在问题是 global.asax 和/或 web.config 未在您的发布设置或部署中复制。
【讨论】:
谢谢你帮助我解决了这个问题。实际上对我来说,App_global.asax.compiled
文件丢失了!以上是关于HTTP 错误 403.14 - 禁止 - MVC4 .net 4.5 捆绑包的主要内容,如果未能解决你的问题,请参考以下文章
HTTP 错误 403.14 - 禁止 - MVC4 .net 4.5 捆绑包
HTTP 错误 403.14 - 禁止 asp.net 5 和 MVC 6 iis10
在 Windows 8 的 IIS 8 上使用 .NET 4.5 的 MVC 4 网站给出 403.14 禁止错误 [关闭]