我已经在IIS中使用asp.net mvc部署了Angular 6应用程序,并且我得到了一个空白页面。
它仅在html的<head>
内显示标题,但不显示所有内容-内部有角6个分量。
我建立了dist文件夹:
ng build --prod --base-href /ePortal/
使用web.config:
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<system.webServer>
<rewrite>
<rules>
<rule name="Angular Routes" stopProcessing="true">
<match url="/*" />
<conditions logicalGrouping="MatchAll">
<add input="{REQUEST_FILENAME}" matchType="IsFile" negate="true" />
<add input="{REQUEST_FILENAME}" matchType="IsDirectory" negate="true" />
</conditions>
<action type="Rewrite" url="/ePortal" />
</rule>
</rules>
</rewrite>
</system.webServer>
</configuration>
然后我已经在IIS中创建了一个应用程序
请咨询。
答案 0 :(得分:0)
您是否在html标头中添加了base-href?
<html>
<head>
...
<base href="/ePortal/">
...
</head>
</html>
您是否已将dist文件夹软件包作为'ePortal'部署在IIS服务器上?
在示例中,您似乎还提到了KudVenkat's Deploy angular app to IIS:)
更新: 对于IE 10和IE 11浏览器,您需要在Polyfills.ts中取消注释几行以导入一些库。您可以参考this thread中@Belen Martin的答案。它为我工作。我一直认为IE不支持Angular网站。谢谢这个问题!
答案 1 :(得分:0)
在服务器上未安装chrome,因此我用资源管理器对其进行了检查,但无法正常工作..在安装chrome之后-页面加载良好-这样问题就解决了(至少在chrome上)
答案 2 :(得分:0)
我发现将<base href="">
保留为空是可行的,只要刷新页面,就不再显示404错误。我不确定为什么会这样,但是我将继续对此进行研究。