iis 5.1 部署.NET MVC 问题
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了iis 5.1 部署.NET MVC 问题相关的知识,希望对你有一定的参考价值。
我把我的项目部署在IIS里的默认网站下~!我已经把匿名访问和身份验证控制改成匿名访问了,在VIEW文件夹下INDEX.html文件打开没问题。可直接浏览网站,弹出这是为什么呢?该怎么解决?
参考技术A IIS5.1不能运行MVC...IIS6.0可以但是需要安装组件 IIS 7.0可以,选择集成模式。经典模式是iis 6, 访问IDenx。htm是静态页面。都能访问在 IIS 上使用 .NET Core 运行 ASP.NET 5 (MVC 6)
【中文标题】在 IIS 上使用 .NET Core 运行 ASP.NET 5 (MVC 6)【英文标题】:Run ASP.NET 5 (MVC 6) using .NET Core on IIS 【发布时间】:2015-04-30 16:32:01 【问题描述】:我刚刚在 Visual Studio.NET 2015 RC 上创建了一个快速的 ASP.NET 5 MVC 6 应用程序,并希望它在我的 Windows 7 上的 IIS Web 服务器上运行。
通常,当我在 IIS 上创建网站时,我需要选择一个应用程序池,无论是 v2.0 还是 v4.0 集成。
现在,由于 .NET Core 的所有库都作为 nuget 包提供,我如何在 IIS 上运行它?我选择哪个应用程序池?这是如何工作的?
【问题讨论】:
我还没有尝试过这种部署方案,但我想 IIS 7(Windows 7 附带)不会支持这个。您过去必须重新打包 vnext 应用程序才能让它们在 IIS 中运行,因为没有 IIS 版本支持它们开箱即用。 IIS 8 现在可能会这样做,但实际上可能需要更新到 Windows 10 才能实际使用默认部署。见:github.com/aspnet/Home/wiki/… 我到处寻找,但找不到答案,我什至不确定 Windows 10。假设我希望应用程序在 IIS 上托管的 www.mywebsite.com 上运行,将如何我去解决这个问题? 我认为您正在寻找Project "Helios"。这就是我对这门学科知识的局限。 :) 【参考方案1】:更新
正如@wickdninja 所说,以下内容已过时。使用his updated solution instead:https://docs.microsoft.com/en-us/aspnet/core/publishing/iis 要让应用程序在 IIS 上运行:
在 v4.0 应用程序池下创建网站。
使用dnu publish
捆绑/发布应用程序。这将创建一个包含应用程序、运行时和所有依赖项的自包含包。更改运行时名称以匹配您选择的运行时。
dnu publish --runtime dnx-coreclr-win-x86.1.0.0-beta5-11625
如果您不希望应用程序每次启动时都从源代码编译,您甚至可以传递 --no-source
。
将捆绑包(来自bin\output
)复制到网站根目录下。
运行
可能出错的地方:
-
IIS 位数(32/64 位)必须与 coreclr 的位数匹配。
如果不将捆绑的网站复制到网站根目录下,请确保运行 IIS 的帐户确实可以访问运行时文件夹。
【讨论】:
最后一个可能出错的事情是使用其他包在 beta 阶段不喜欢的运行时。在撰写本文时,coreclr 在 nuget 上是 beta4,在 myget.org 预发行版上是 beta5。如果你的包来自 nuget,像 Microsoft.AspNet.Mvc 这样的包在 beta4 上,根据我的经验,它不会在 beta5 coreclr 上运行,因为正在进行很多重大更改。 谢谢你,我终于让它工作了。我只需要在 .NET Core x64 架构而不是 x86 下发布网站,它就可以工作了。 Here 应用程序池建议使用“无托管代码”。 嗨,我怎样才能得到运行时列表?我不知道我应该使用哪个运行时 这个答案已经过时了。有关更新信息,请参阅下面的文档链接【参考方案2】:这个问题已经过时了,微软已经为这个场景发布了相当详尽的文档。你可以在这里找到它:https://docs.microsoft.com/en-us/aspnet/core/publishing/iis
【讨论】:
如果你对这篇文章进行总结,它可能对你有相当多的意义。指向关于 SO 的文档通常是不受欢迎的 @paqogomez 感谢您的建议。我同意,我可以通过总结文档获得更多积分,但是由于新的docs.microsoft.com/en-us/aspnet/core/publishing/iis 是一个生成的文档,任何人都可以通过页面上的"edit" 按钮对其做出贡献,我想我将提供的任何摘要都只是很快就过时了。在文档方面,我宁愿给人们准确的信息,也不愿贪图积分。 :) 好吧,这没有抓住重点。在 SO 上,我们永远无法确定链接是否会过时,并且我们不确定信息是否是最新的。因此,我们总结而不是链接,并尽最大努力跟上我们的帖子并保持信息更新。祝你好运以上是关于iis 5.1 部署.NET MVC 问题的主要内容,如果未能解决你的问题,请参考以下文章
部署 ASP.Net MVC 2.0 应用程序 IIS 7.0
在 IIS 上部署后从数据库返回的 MVC 4.0 .NET 应用程序和值
在 IIS Express 或其他 WebServer 上部署 ASP.NET MVC 应用程序?
将 ASP.NET MVC NHibernate 应用程序部署到 IIS7 时出错