2017-03-15 4 views
1

初めての方Angular2 Wepアプリ開発。Angular2 AppとBaseurlのデプロイ

私は角度-CLIを使用した1つのAngular2アプリを作成し、は今、私は私のTomcatサーバーに、このアプリを展開します。

私はng buildを与え、配備用のdistフォルダを作成します。 distフォルダ内のすべてのファイルをコピーし、somenameのようなTomcat webappsフォルダ内に1つのフォルダを作成し、この内のすべてのファイルを貼り付けます。somenameフォルダ。そして、私はindex.htmlベースhrefを/ somenameに変更しました。

<base href="/somename"> 

私はローカルホストのようなサーバーからアプリケーションを実行する場合:9000/somenameの。エラーではなくファイルのようなコンソールでエラーを出します。

どうすれば問題を解決できますか?

ご協力ありがとうございます。

+1

のようなtomcatサーバーからアプリを実行してください。**正確なエラーメッセージ**を質問に追加してください。どのサーバーを使用していますか?ルートパスのサーバー上で動作しますか?あなたは 'HashLocationStrategy'を使って試しましたか? ( 'import:[RouterModule.forRoot(myRoutes、{useHash:true})]))? –

+0

このリンクを確認してくださいhttp://stackoverflow.com/questions/39018765/deploy-angular-2-app-with-webpack-to-tomcat-404-errors –

答えて

2

は、次のいずれかのように、ベースHREFを設定してみてください:

<base href="./">:これは通常、スターターパック、または角度ルータを使用/持っていない初心者のプロジェクトに適しています。基本的には、baseを提供するディレクトリとして設定します。 details hereより - これは、IIS 8.5上で私のためによく働いた:

<base href="/somename/>

は(終了 /を注意してください)。

また、関連するノートでは、アプリケーションを構築するたびに手動でindex.htmlを編集する代わりに、ng build --base-href your-new-base-hrefコマンドを使用することをお勧めします。

+0

ちょうどそれの一体のために...あなたはさらに実験することができます"/"、 ""、 "somename"、 "somename /"、 "./"、 "./somename"のような基本的なhrefの値が異なります。 ''がどのように動作するかの実用的な理解を与えるでしょう。ベースタグの簡単な情報:https://www.w3schools.com/tags/tag_base.asp – Krishnan

1

はあなたのdistフォルダの内容は、 "て、myApp" フォルダにコピーする必要があり

または

<base href="/myApp/"> 

--base-HREF /て、myApp/

を構築

ngのようなアプリを構築するために試してみてください。 localhost:8080/myApp/

関連する問題