私はかなり良い走っている角度4アプリを持っています。角4ルータ - ページが見つかりませんリダイレクトでエラーが発生しました
私はHashLocationStrategyを使用していますが、私は自分のURLにハッシュを持つことから離れたいと思っています。
私のルータは次のようになり、今...
export const routes: Routes = [
{
path: '',
component: TilesComponent
},
{
path: 'profile/:urlUserName',
component: ProfileComponent
},
{
path: 'forBusiness',
component: ForBusinessComponent
},
{
path: 'login',
component: LoginPageComponent
},
{
path: 'editTile/:urlUserName',
component: EditTileComponent,
canActivate: [AuthenticationService]
}
];
export const appRoutingProviders: any[] = [];
export const routing = RouterModule.forRoot(routes, { });
私はこのように生成された私の最初のページからのリンクを持っている設定...
routerLink="/forBusiness"
それはこれにリダイレクト私はちょうどこのウルをドロップする場合は今のページ...
https://www.tilecase.com/forBusiness
lをブラウザに追加し、forBusinessページだけをロードしようとすると、「ページが見つかりません」というエラーが表示されます。
これを機能させるにはルートまたはページ設定に何をする必要がありますか? LocationStrategy
1. HashLocationStrategyあなたのサーバーは、Apacheは、単にファイルを作成している場合PathLocationStrategy
があなたのroot-module
import {LocationStrategy, PathLocationStrategy} from '@angular/common'
// add this in provider
{ provide: LocationStrategy, useClass: PathLocationStrategy }
でこれを追加する必要がある
2 PathLocationStrategyの2種類があり
あなたは別の 'LocationStrategy'に切り替えたときに、あなたの角度のコードで何かを変更する必要はありませんに従って動作します。ただし、サーバーはHTML5 pushStateをサポートする必要があり、そうするように構成する必要があります。 –
いつものようにありがとう。私はSeoレンダリングのためにNetlifyを使用しています。彼らがそれを提供しているかどうかはわかりません。ハッシュを削除できる他の方法はありますか? –
いいえ、サーバーがHTML5 pushStateをサポートしていない場合、AFAIKの方法はありません。 –