详解angular部署到iis出现404解决方案

乐观主义者从每一个灾难中看到机遇,而悲观主义都从每一个机遇中看到灾难。无论有多困难,都坚强地抬头挺胸,人生是一场醒悟,不要昨日,不要明天,只要今日。

angular应用部署在iis上,刷新出现404

解决方案:

安装 iis URL Rewrite 模块,配置urlrewrite如下:

在 src 目录下增加web.config,内容如下:

<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="/" />
   </rule>
  </rules>
 </rewrite>
</system.webServer>
</configuration>

配置 web.config 自动打包

修改 angular-cli.json文件(angular2-5)

 "apps": [
    {
    "root": “src”,
    "ourDir": “dist”,
    "assets": [
     “assets”,
     “favicon.ico”,
     “web.config”
     ],

修改 angular.json 文件(angular6)

    “build”: {
    "options”: {
     . . . 
     "assets": [
      “src/assets”,
      “src/favicon.ico”,
      “src/web.config”
       ],

Reference

  • https://github.com/WeihanLi/TechNotes/issues/16
  • https://stackoverflow.com/questions/43785928/angular-2-hosted-on-iis-http-error-404
  • https://blogs.msdn.microsoft.com/premier_developer/2017/06/14/tips-for-running-an-angular-app-in-iis/

以上就是详解angular部署到iis出现404解决方案。自己要先看得起自己,别人才会看得起你。更多关于详解angular部署到iis出现404解决方案请关注haodaima.com其它相关文章!

您可能有感兴趣的文章
AngularJS tab栏实现和mvc小案例实例详解

Angular中innerHTML标签的样式不起作用的原因解析

angular使用md5,CryptoJS des加密的方法

Angular请求防抖处理第一次请求失效问题

angular多语言配置详解