我'm building an Angular 4 web application that have some restricted pages according to user permissions. I' m使用 canActivate 路由器属性阻止用户访问 . 如果用户没有访问该页面的权限,则会将其重定向到我开发的404错误页面 .

路线示例:

const routes: Routes = [
{
    path: '', component: PageComponent,
    children: [
        { path: 'indicadores', loadChildren: './indicadores/indicadores.module#IndicadoresModule', canActivate: [PermissoesService] }]}];

CanActivate方法:

canActivate(route: ActivatedRouteSnapshot, state: RouterStateSnapshot): Observable<boolean> | boolean {
    let path = state.url.split('\/')[1];
    if (!this.auth.isLoggedIn()) {
        return false;
    }
    else{
        if(this.getRoutePermission(path)) return true;
        else {
            this.route.navigate(['/404']);
        }
    }
}

该应用程序存储在IIS服务器上 . 当我使用 ng serve 在本地机器上开发和测试时,该应用程序正常工作 . 但是当我将应用程序部署到服务器时,我尝试访问用户没有权限的路由器,应用程序重定向到IIS 404页面而不是我的404页面 .

服务器或代码中是否有其他配置?