Asp.net vNext 早期测试版发布到 Windows 服务器中的 IIS

Posted

技术标签:

【中文标题】Asp.net vNext 早期测试版发布到 Windows 服务器中的 IIS【英文标题】:Asp.net vNext early beta publish to IIS in windows server 【发布时间】:2014-09-22 21:31:25 【问题描述】:

我们如何发布 Asp.net vnext 应用程序,我尝试使用文件系统进行部署,

1) 为什么在已发布的文件系统中,approot 拥有所有源代码

2) 我将 wwwwroot 中的 FTP 文件放入 IIS 网站文件夹,但仍然无法正常工作

我是否需要在 IIS7.、Windows Server 2012 上安装任何东西

【问题讨论】:

【参考方案1】:

首先,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第一部分。

【讨论】:

@WarrenP:这就是与编程相关的问答网站的命运。问题是直接询问 vNext 的早期构建(现在是 ASP.NET 5 + MVC 6)。答案与问题有关。如果有人在部署当前版本方面需要帮助,他们可以提出一个新问题(并且可能有)。没有必要,也没有期望,永远用所有最新和最伟大的方式更新答案。对于像我这样拥有 1000 多个答案、跨越 5 年时间的人来说,这简直是站不住脚的。 我提出了一个新问题,如果没有人可以在一个来源中提供足够的信息,我会自己弄清楚并回答,这里:***.com/questions/34641065/…【参考方案2】:

我通过以下方式将我的应用部署到 Windows Server 2012 R2:

    将我的 MVC 应用程序与:

    kpm bundle --configuration Release --runtime kre-clr-win-x64.1.0.0-beta3 -o

这会将所有必要的文件夹和文件复制到服务器(它需要的不仅仅是 wwwroot 文件夹)

    在 IIS 中创建了一个新的应用程序并将物理路径指向 wwwroot 文件夹

就是这样!

顺便说一句,我无法从 VS2015 开始发布。我一直在使用命令行来完成这一切。

【讨论】:

此答案已过时,因为 kpm 不再存在。

以上是关于Asp.net vNext 早期测试版发布到 Windows 服务器中的 IIS的主要内容,如果未能解决你的问题,请参考以下文章

ASP.NET 5 (vNext) 中的身份验证

结合CLR类库发布ASP.NET vNext/DNX

身份验证类型名称如何在 asp.net vnext 中注册

ASP.NET VNext 调试 MVC 源码

ASP.NET 5 (vNext) - 获取配置设置

ASP.NET 5 (vNext) - 获取配置设置