【发布时间】:2017-06-11 22:12:40
【问题描述】:
我发现这篇 answer 与 this 旧文章一致,但两者都不起作用。因此,我在这里询问一个适用于 VS2017 的新解决方案。 我将更详细地解释: 第一次定义虚拟目录(如“/site1”和物理文件夹“site\site1”)并尝试从 VS2017 发布时,收到错误消息(无法写入指定路径)并且无法发布。 然后,如果您进入控制台(从 portal.azure.com)并手动在 d:\site 下使用“md site1”创建文件夹),发布过程将正常工作(并且在新文件夹下创建了很多文件)并且以“1成功...”结束,但是当您浏览到新的 ..../site1 时,您会收到以下错误消息: “由于发生内部服务器错误,无法显示页面。”
在网络上找不到任何东西来解决这个特定错误(在一个旧文档中,他们说这是由于 2 个项目(在同一个解决方案中)的单独 git 存储库,一个针对根文件夹,另一个针对针对虚拟目录,但我不明白为什么通过VS2017发布时不同的源代码控制会在生产中产生麻烦)......
有人知道怎么解决吗?
David Ebbo 要求的更新: 我认为问题是Azure方面的配置问题(其他文章没有说明您必须在定义虚拟目录时通过控制台创建物理文件夹)和/或运行时错误(创建物理文件夹时从VS2017发布过程有效并成功完成)。
以下是了解上下文的更多详细信息: 1) Visual Studio 解决方案包含 2 个项目:一个“主项目”(带有“Hello world!”的空 .NET Core 项目),其发布配置文件针对 Azure 网站的根文件夹 + 另一个“子项目”(标准 MVC Core. NET 模板项目),发布配置文件针对同一 Azure 站点,并在“站点名称”和“站点 url”的尾部添加了“/site1”。 2)如果我尝试将子项目发布到站点的根文件夹,一切正常(但当然我会覆盖“主项目”),因此这不是代码/版本问题。 3) 通过控制台,我可以看到文件夹 d:\home\site\site1 包含与主项目 d:\home\site\wwwroot 中的文件“相似”的文件。
【问题讨论】:
-
我认为关于您的问题是否与 VS Publishing 相关(即文件未在正确的位置)或运行时相关(文件存在但不能像您一样运行),我认为这个问题还不够清楚预计)。请参阅this post 并相应改写。
标签: git azure-web-app-service visual-studio-2017 virtual-directory