部署到IIS的角度脚本上出现404错误

时间:2018-10-20 20:55:32

标签: angular iis

我已将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)

2 个答案:

答案 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="">