【发布时间】:2014-09-22 21:31:25
【问题描述】:
我们如何发布 Asp.net vnext 应用程序,我尝试使用文件系统进行部署,
1) 为什么在已发布的文件系统中,approot 拥有所有源代码
2) 我将 wwwwroot 中的 FTP 文件放入 IIS 网站文件夹,但仍然无法正常工作
我是否需要在 IIS7.、Windows Server 2012 上安装任何东西
【问题讨论】:
标签: asp.net asp.net-mvc
我们如何发布 Asp.net vnext 应用程序,我尝试使用文件系统进行部署,
1) 为什么在已发布的文件系统中,approot 拥有所有源代码
2) 我将 wwwwroot 中的 FTP 文件放入 IIS 网站文件夹,但仍然无法正常工作
我是否需要在 IIS7.、Windows Server 2012 上安装任何东西
【问题讨论】:
标签: asp.net asp.net-mvc
首先,ASP.NET vNext 离黄金时间还很远。您绝对不应该将它用于任何生产代码。至于你的问题:
为什么在已发布的文件系统中,approot 拥有所有源代码
vNext 的主要卖点之一是 Rosalyn 的内存编译功能。所有源代码都已发布,因为不再进行预编译。它现在更像是 PHP、Ruby 等脚本语言,您可以在其中更改源代码并立即看到更改。
我将 wwwwroot 中的 FTP 文件放入 IIS 网站文件夹,但仍然无法正常工作
因为这仍然是预览版,IIS 8(这是在 Windows Server 2012 中运行的,而不是 IIS 7)无法支持该站点,因为它通常会发布。您必须使用命令行工具kpm 来打包应用程序,它本质上就像一个老式的 MVC 应用程序一样构建它。见https://github.com/aspnet/Home/wiki/FTP-deploy-an-AspNet-vNext-application-to-Microsoft-Azure-websites第一部分。
【讨论】:
我通过以下方式将我的应用部署到 Windows Server 2012 R2:
将我的 MVC 应用程序与:
kpm bundle --configuration Release --runtime kre-clr-win-x64.1.0.0-beta3 -o
这会将所有必要的文件夹和文件复制到服务器(它需要的不仅仅是 wwwroot 文件夹)
就是这样!
顺便说一句,我无法从 VS2015 开始发布。我一直在使用命令行来完成这一切。
【讨论】: