首页 > 解决方案 > 跳过 Angular 8 和 Apache 中特定路径的 URL 路由

问题描述

我有一个 2 Angular 应用程序:前端和管理员。这两个都托管在 apache 服务器后面的 cpanel 上。网站设置如下。

mydomain.com/ ----> 前端 Angular 应用程序

mydomain.com/admin ----> 管理 Angular 应用程序

现在,当我打开 mydomain.com/admin 时,它会正确重定向到 Admin Angular Application,刷新时会出现问题。刷新时它会加载 FrontEnd Angular Application 并尝试在 FrontEnd Angular Application 中查找“/admin”的路径。

访问

<IfModule mod_rewrite.c>
  RewriteEngine On
  RewriteBase /
  RewriteRule ^index\.html$ - [L]
  RewriteRule api/(.*)$ http://localhost:3001/$1 [L,P]
  RewriteCond %{REQUEST_FILENAME} !-f
  RewriteCond %{REQUEST_FILENAME} !-d
  RewriteRule . /index.html [L]
</IfModule>

前端角路由

const routes: Routes = [
  {path: '', redirectTo: 'home', pathMatch: 'full'},
  {path: 'dashboard', component: UserDashboardComponent,canActivate:  [AuthGuardService]},
  {path: 'home', component: HomeComponent},
];

我试着用谷歌搜索,但所有的努力都是徒劳的。并高度赞赏这个方向的指针。

标签: angular.htaccessapache2

解决方案


为什么首先需要两个角度应用程序?像其他组件一样构建管理部分,并根据用户添加保护以保护管理路由


推荐阅读