[英]IIS Express HTTP 403.14 when Debugging AngularJS SPA with WebAPI2
[英]Default view does not show when deploying HotTowel SPA to IIS
我在VS 2013中使用Angular.js,HotTowel和Breeze创建了一个SPA项目。 它在我的开发计算机上正常工作,但是当我将其部署到运行Windows Server 2012的Web服务器上的IIS 8.0时,它会失败。 该框架已加载,但未加载我的默认视图。 它只是闪烁初始页面并显示一个空的浏览器。
我可以使用开发人员工具浏览js代码,但是它从来不会将默认视图加载到index.html中。
使用IE中的开发人员工具,我在config.route.js中设置断点,以逐步完成确定将哪些页面加载到SPA中的过程。 它似乎提供了正确的页面。 应该加载的页面称为request.html,因此我还在request.js中放置了一个断点,以查看加载是否失败。 它从来没有达到这个断点。
我希望也许有人在将SPA部署到IIS时遇到了这些相同或相似的问题。
感谢您提供的任何帮助。 同时,我将继续搜索。
JG
终于成功了! 如评论中所述,我发现index.html中存在一些路径问题。 我设法通过从shell.html的data-ng-include中删除开头的'\\'来解决此问题。
是:
<div data-ng-include="'/app/layout/shell.html'"></div>
现在:
<div data-ng-include="'app/layout/shell.html'"></div>
这使代码能够找到shell.html的正确目录级别。 我担心这会破坏开发环境的代码,但效果很好。
然后,我发现需要在ccWidgetHeader函数中的directives.js文件中修复类似的路径。 templateUrl必须进行修改。
是:
/app/layout/widgetheader.html
现在:
app/layout/widgetheader.html
最后,我不得不修改style.css以修复标题中徽标图像的路径。
是:
.navbar .brand {
background: url(/content/images/fcma-biostar.png) no-repeat left center !important;
margin-left: -6px;
padding: 35px 50px;
}
现在:
.navbar .brand {
background: url(images/fcma-biostar.png) no-repeat left center !important;
margin-left: -6px;
padding: 35px 50px;
}
非常感谢! 感谢PW Kad和Fop在此问题上的配合!
很好的猜测,当然,黑屏可能是由这里提到的更多原因造成的。 就我而言,我必须在BundleConfig.cs代码中关闭缩小功能:
BundleTable.EnableOptimizations = false;
(将此作为解决方法考虑。要对其进行修复,绝对值得尝试检查角度代码的依赖项注入部分)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.