我已将Angular应用程序部署到Windows Server上的IIS,并且由于脚本/样式捆绑全部给出404错误,因此无法加载。我已经在IIS中将我的应用程序设置为“门户”,并在web.config中重写了URL:
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<system.webServer>
<rewrite>
<rules>
<rule name="AngularJS Routes" stopProcessing="true">
<match url=".*" />
<conditions logicalGrouping="MatchAll">
<add input="{REQUEST_FILENAME}" matchType="IsFile" negate="true" />
<add input="{REQUEST_FILENAME}" matchType="IsDirectory" negate="true" />
<add input="{REQUEST_URI}" pattern="^/(api)" negate="true" />
</conditions>
<action type="Rewrite" url="/portal" />
</rule>
</rules>
</rewrite>
</system.webServer>
</configuration>
然后将index.html的基本网址设置为:
<base href="/portal">
当我将应用程序构建到dist文件夹时,我使用的命令只是一个简单的构建ng b
,没有任何选项。
我在控制台中遇到的错误的示例是:
GET http://wavemaker.webdevelopwolf.com/inline.bundle.js net::ERR_ABORTED 404 (Not Found)
答案 0 :(得分:1)
要构建应用,请使用命令
ng b --deploy-url /portal/
答案 1 :(得分:0)
用于建筑用途
ng build --base-href "/portal/" --prod
确保使用资产文件夹中的图像,并在HTML中像这样引用
<img src="assets/img.jpg" alt=""> instead of <img src="../../assets/img.jpg" alt="">