即使配置了web.config,Angular 7应用程序刷新也无法在IIS上运行

时间:2019-04-17 16:31:15

标签: javascript angular iis routing

我的angular 7应用程序出现奇怪的行为。每次刷新时,它都会丢失路由,并给我404的提示。我已经阅读了很多有关配置web.config来解决问题的信息,但是即使配置了它,我也无法摆脱它行为。

web.config

<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>

模块配置

@NgModule({
  imports: [
    AppRoutingModule,
    SharedModule,
    HttpClientModule,
    AuthModule,
    StoreModule.forRoot(reducers, { metaReducers }),
    EffectsModule.forRoot(effects),
    StoreRouterConnectingModule,
    environment.development ? StoreDevtoolsModule.instrument() : []
  ],
  declarations: [AppComponent],
  providers: [
    { provide: HTTP_INTERCEPTORS, useClass: JwtInterceptor, multi: true },
    { provide: HTTP_INTERCEPTORS, useClass: ErrorInterceptor, multi: true },
    { provide: RouterStateSerializer, useClass: CustomSerializer }],
  bootstrap: [AppComponent]
})
export class AppModule {}

我的index.html文件的标题中也有<base href="/" />部分

1 个答案:

答案 0 :(得分:0)

在dist文件夹中,您应该有一个带有项目名称的文件夹,尝试将该文件夹的内容直接移动到dist