2016-12-03 28 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

什麼是使用transpile呢?這是打字嗎? dist文件夾在哪裏? – Milad

+0

@ xe4me我正在使用打字稿來傳送它。在服務器上,我沒有看到任何錯誤。仍然我的內頁由角2路由不加載。 –

回答

1

最後我找到了我的解決方案。我的內部網絡(防火牆)阻止我的角度2應用程序加載動態頁面。在網絡人員的幫助下,我解決了這個問題。

除此之外,URL重寫和基礎路徑仍然需要加載角度的應用程序在服務器上。

感謝。

+0

什麼意思實際上「在網絡傢伙的幫助下,我解決了這個問題」? – Jibeee

+0

@Jibeee - 在網絡支持團隊的幫助下,我從其他沒有防火牆的服務器請求我的網站URL,然後我們知道它是我們的服務器中的防火牆,它阻止我的網站加載頁面。 –

相關問題