2016-12-03 7 views
3

This is my project structure. I have index.html outside app folder. ローカルでアプリケーションを実行すると、正しく動作します。 Angular2のルーティングとページのレンダリングは、ローカルマシンで適切に機能しています。angular2はサーバー上のページをロードしません。同じことがローカルマシンで処理されています。

しかし、私はこのアプリケーションをサーバーにホストしています。ページのルーティングが機能していません。

私のWeb .configに次のコードを追加してURLを書き込んでください。次に、index.htmlページをデフォルトページとして呼び出すことができます。

``

<system.webServer> 
<rewrite> 
<rules> 
<rule name="Angular2" stopProcessing="true"> 
<match url="^(.*)$" ignoreCase="false" /> 
<conditions logicalGrouping="MatchAll"> 
<add input="{REQUEST_FILENAME}" matchType="IsFile" negate="true" pattern="" ignoreCase="false" /> 
</conditions> 
<action type="Rewrite" url="/index.html" appendQueryString="true" /> 
</rule> 
</rules> 
</rewrite> 
</system.webServer> 

しかし、まだangular2ページが表示されません。

また、私はルートドメインで自分のアプリケーションをリリースしました。 index.htmlページにも
<base href="/">が含まれています。

どうすればよいですか?

+0

エラーは何ですか?あなたがそこに行くとき何を見ますか? – Milad

+0

それを使用しているのは何ですか?このタイスクリプトですか? distフォルダはどこですか? – Milad

+0

@ xe4me私はそれをトランスクリライズするためにタイスクリプトを使用しています。サーバー上でエラーが表示されません。まだ角度2でルーティングされている私の内側のページは読み込まれません。 –

答えて

1

最後に私の解決策が見つかりました。私の内部ネットワーク(ファイアウォール)は、角度2アプリが動的ページを読み込むのをブロックしていました。ネットワーク関係者の助けを借りて私はその問題を解決しました。

それ以外のURL書き換えとベースパスは、サーバ上で角度アプリをロードするためにはまだ必要です。

ありがとうございました。

+0

実際には「ネットワークの人の助けを借りて私はその問題を解決しました」とはどういう意味ですか? – Jibeee

+0

@ Jibeee - ネットワークサポートチームの助けを借りて、私はファイアウォールがない他のサーバーから自分のWebサイトURLを要求しています。 –

関連する問題