步骤:
在ftping(发布)到Web服务器之后,我可以看到应用程序的当前文件结构是/site/wwwroot/wwwroot
所以这很奇怪。 wwwroot已经嵌套在自身内部。
/site/wwwroot/wwwroot
。大。有用。但是,如果我需要返回并向网站发布新的更改,则Web服务器上的文件夹结构会根据更新的应用程序设置而更改!现在该站点将无法加载,新文件系统为site\wwwroot\wwwroot\wwwroot
我可以再次更新azure上的应用程序设置,并将该路径设置为root,并且该站点将再次起作用。但现在我在服务器上有两个网站副本,我不能帮助,但这不是一个“最佳实践”。更不用说如果我再次发布该网站,文件系统将只附加另一个wwwroot
并打破该网站。
这里发生了什么?如何使用适当的文件系统结构发布我的网站。当网站看起来像这样我必须管理多个web.config
和它使我很难弄清楚如何使角度路由器工作。这一切都是通过初始微软预设(Web应用程序和webapi应用程序)完成的。
我觉得理想情况下整个网站应该在wwwroot下使用一个web.config
是这样的吗?谢谢你的阅读。任何帮助表示赞赏。
答案 0 :(得分:1)
如果您想将wwwroot
作为静态文件投放,则应在Startup.cs
文件中稍微更改一下。
尝试将以下代码段添加到Configure()
文件中的Startup.cs
方法中。
app.UseDefaultFiles(new DefaultFilesOptions() {
DefaultFileNames = new List<string>() { "index.html" }
});
app.UseStaticFiles();
以下是完整的示例代码:
public void Configure(IApplicationBuilder app, IHostingEnvironment env)
{
if (env.IsDevelopment())
{
app.UseDeveloperExceptionPage();
}
app.UseDefaultFiles(new DefaultFilesOptions() {
DefaultFileNames = new List<string>() { "index.html" }
});
app.UseStaticFiles();
app.UseMvc();
}
现在,您应该将您的网络应用程序部署到Azure中而不会出现问题。