首页 > 解决方案 > Angular 2,直接访问 www.example.com/otherURL 时如何重定向到 www.example.com 的基础

问题描述

我确定以前有人问过这个问题,但我不知道我应该寻找什么信息,并且特定于 Angular 的示例似乎有点稀疏。

我在一个网站上工作,边走边使用/学习 Angular 2。

这是:https ://stuart-aitken.tk/

问题是,如果我直接导​​航到网站的任何主页,例如https://stuart-aitken.tk/home,它会给我一个 404 错误。

在本地主机的测试环境中运行它时,它工作正常。

不知道我在这里做错了什么。当我在控制台中构建站点时,我指定了基本 URL,如下所示:

ng build --prod --base-href="https://stuart-aitken.tk/"

app.module.ts 中的 RouterModule 如下所示:

imports: [ BrowserModule.withServerTransition({ appId: 'ng-cli-universal' }), BrowserAnimationsModule, RouterModule.forRoot( [ { path: 'home', component: HomeComponent, pathMatch: 'full' }, { path: 'programming', component: ProgrammingComponent, pathMatch: 'full' }, { path: '**', redirectTo: 'home', pathMatch: 'full' } ]), NgbModule.forRoot(), ]

另外,在 index.html 我<base href="/">在该<head>地区。

还有什么我应该注意的,或者做错了什么吗?

我对解决方案的第一个想法是告诉我的网络托管服务提供商将所有扩展 URL 重定向到我网站的主页,但我觉得这在 Angular 世界中是一件非常错误的事情。但老实说,我只是不知道。

任何帮助将不胜感激,干杯!

标签: angularangular2-routing

解决方案


推荐阅读