我有一個現有的Azure應用程序服務移動應用程序。它適用於iOS和Android客戶端(以及外部網站)。我的理解是,所有應用服務選項基本上都是應用不同默認模板的相同產品,所以我想將我自己的一些網頁添加到此移動應用。將網站添加到現有的Azure移動應用程序(應用程序服務)
我創建了一個測試/示例Web App,並且在App Service編輯器中,wwwroot
文件夾中似乎只有一個文件:hostingstart.html
。 (有趣的是,甚至沒有web.config
這是爲什麼?)
在我的Node.js移動應用程序,當然有一個大的文件夾結構,看起來像這樣(有些項目被忽略):
- API(文件夾)
- node_modules(文件夾)
- 表(文件夾)
- 分型(文件夾)
- app.js
- iisnode.yml
- 的package.json
- 的web.config
我嘗試添加一個index.html
這個根(wwwroot
)文件夾,但隨後導航到http://{service name}.azurewebsites.net/index.html
只是給了我同樣的「這個服務已經像往常一樣創建「頁面。
所以,後來我走進我的app.js
文件,並改變了這一點:
var mobile = azureMobileApps({
// Explicitly enable the Azure Mobile Apps home page
homePage: true
});
這樣:
var mobile = azureMobileApps({
// Explicitly enable the Azure Mobile Apps home page
homePage: false
});
之後,出現以下錯誤:
- 導航到
{service name}.azurewebsites.net
退貨:- 不能得到/
- 導航到
{service name}.azurewebsites.net/index.html
回報:- 不能得到/index.html
當我遇到這樣的錯誤了我的API方法之一,我檢查{api method}.json
文件中的設置。我不認爲這是答案。
我猜測在某個文件中有某種開關允許直接提供*.html
請求。我在我的web.config
文件中的以下條目:
<!-- First we consider whether the incoming URL matches a physical file in the /public folder -->
<rule name="StaticContent">
<action type="Rewrite" url="public{REQUEST_URI}"/>
</rule>
<!-- All other URLs are mapped to the node.js site entry point -->
<rule name="DynamicContent">
<conditions>
<add input="{REQUEST_FILENAME}" matchType="IsFile" negate="True"/>
</conditions>
<action type="Rewrite" url="app.js"/>
</rule>
我會承擔,我需要改變的東西在這裏允許訪問,但什麼?
嗨@ mbm29414,還有更新嗎? –