Angular4をTomcat環境で動かしたい
Angular4をTomcat環境で動かそうとしていますが、
ルーティングで指定したURLにアクセスするとエラーになってしまします。
【手順】
@angular/cliを使用して、「ng new testApp」を実施して空のアプリを作成しました。
その後、URLをいくつか用意しました。
◇app-routing.module.ts
import { NgModule } from '@angular/core';
import { RouterModule, Routes } from '@angular/router';
import { TestComponent } from './test.component';
import { Test2Component } from './test2.component';
import { Test3Component } from './test3.component';
const routes: Routes = [
{ path: '', redirectTo: '/test', pathMatch: 'full' },
{ path: 'test', component: TestComponent },
{ path: 'test2', component: Test2Component },
{ path: 'test3', component: Test3Component },
];
@NgModule({
imports: [RouterModule.forRoot(routes)],
exports: [RouterModule]
})
export class AppRoutingModule { }
ng serve --openコマンドを実施すると、以下のブラウザが開かれ画面が表示されます。
http://localhost:4200/test
その後、http://localhost:4200/test2、http://localhost:4200/test3にアクセスすると
その画面が表示されました。
そこで、Tomcat環境に乗せてみようと思い、以下のコマンドでビルドを行いました。
ng build -prod
distフォルダが作成されたので、それらを以下に配置させてTomcatを実行してみました。
C:\Program Files\Apache Software Foundation\Tomcat 8.5\webapps\
それだけですとエラーとなってしまったのでdist配下のindex.htmlを以下に変更しています。
↓
すると、
http://localhost:8080/distにアクセスすると、リダイレクトされ、
http://localhost:8080/dist/testの画面が表示されることを確認できたのですが、以下にアクセスすると、
HTTPステータス 404 - /dist/testエラーとなってしまいます。
http://localhost:8080/dist/test
http://localhost:8080/dist/test2
http://localhost:8080/dist/test3
何か設定などが必要なのでしょうか?