非常に簡単なことをやっています。 AWS S3でAngularアプリを開催しています。AWS S3で '**'が期待通りに機能していない経路のコンフィグレーション
アプリは、世界で最も単純なものです。静的コンテンツを持つ1つのホームページです。私は私が予想ホームページを取得するベースURL http://my-site.s3-website.xxx.amazonaws.com/
をお願いする場合
const appRoutes: Routes = [
{
path: 'home',
component: HomeComponent,
data: { title: 'Home' }
},
{ path: '',
redirectTo: '/home',
pathMatch: 'full'
},
{ path: '**', component: HomeComponent }
];
を次のように
ルータが定義されています。
ブラウザでは、URL http://my-site.s3-website.xxx.amazonaws.com/home
が表示されます。つまり、ルータの設定を見て、予期したとおりに末尾にhome
と表示されます。
私は後でURLを要求しますhttp://my-site.s3-website.xxx.eu-central-1.amazonaws.com/home
私は再び期待されるホームページを取得します。私は間違ったURLを入力したときに、私はミスを犯すとhomeac
ではなくhome
を求める場合
の問題は、このようなhttp://my-site.s3-website.xxx.eu-central-1.amazonaws.com/homeac
、すなわちとして、提起します。私は最後として、ルートに設定されていることを考慮すると
、次のルール
{ path: '**', component: HomeComponent }
私は再びホーム・ページ(アプリのすなわちページのみ)を取得するために期待していました。むしろ私は、ブラウザ上では何も表示されていないと私は私がローカルの開発サーバー(ng serve
が提供する、すなわち1)と同じことを行うと、ブラウザのコンソールで、私は次のエラー・スタック
を見ますエラーが発生せず、間違ったURLを使用していてもホームページが正しく取得されます。
私が間違っていることについてのアイデアはありますか? {パス: '**'、redirectTo: 'ホーム'、pathMatch: 'フル'}
は、あなたが試してみまし試します –