Angular 2 Hosted on IIS: HTTP Error 404 Angular 2 Hosted on IIS: HTTP Error 404 angular angular

Angular 2 Hosted on IIS: HTTP Error 404


We have to make IIS fall back to index.html by adding a rewrite rule.

Step 1: Install IIS URL Rewrite Module

Step 2: Add a rewrite rule to web.config

   <?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" />                 </conditions>              <action type="Rewrite" url="/" />            </rule>          </rules>        </rewrite>      </system.webServer>    </configuration>


STEP 3: add web.config link to angular.json: (because after ng build it will skipped)

"architect": {                "build": {                    "builder": "@angular-devkit/build-angular:browser",                    "options": {                         ..........                        "assets": [                            "src/favicon.ico",                            "src/assets",                            **"src/web.config"**                        ]


If you are using an IIS application like myApp below your default web site (then the URL to your application should have the syntax http://localhost/myApp/my-angular-route), then you should try to modify the action to

<action type="Rewrite" url="/myApp/"/>;

Then it works for my environment without any problems.

Step by step instructions can be found here:https://blogs.msdn.microsoft.com/premier_developer/2017/06/14/tips-for-running-an-angular-app-in-iis/