如何在 IIS 7、Windows 7 上将 ASP.NET 4.0 添加为应用程序池
Posted
技术标签:
【中文标题】如何在 IIS 7、Windows 7 上将 ASP.NET 4.0 添加为应用程序池【英文标题】:How to add ASP.NET 4.0 as Application Pool on IIS 7, Windows 7 【发布时间】:2011-06-20 21:17:37 【问题描述】:无论如何,配置服务器并不是我的强项。 我正在尝试将开发项目移至 Windows 7。 运行应用程序需要做的一件事是选择 ASP.NET v4.0 作为 IIS 中的应用程序池。
我查看了以下链接中的说明,以确保选择了正确的应用程序开发选项:
http://www.gotknowhow.com/articles/how-to-install-iis7-and-enable-aspnet
从 IIS 管理器 中,我选择 Application Pools 并且只看到 - 经典 .NET 应用程序池 - DefaultAppPool
我还需要能够选择 - ASP.NET v4.0 - ASP.NET v4.0 经典版
如何将这些添加到可用应用程序池列表中?
【问题讨论】:
如果答案不可接受,也许会抛出一个线索,以便有人知道缺少什么。否则,它在我看来肯定是赢家。 【参考方案1】:您可能需要安装 .NET 4(它还会为您创建一个新的 AppPool)
首先确保您拥有IIS installed,然后执行以下步骤:
-
打开命令提示符 (Windows + R) 并输入
cmd
并按 ENTER您可能需要如果您启用了 UAC,则以管理员身份启动它。
为此,找到exe(通常您可以在开始菜单打开的情况下开始输入),右键单击并选择“以管理员身份运行”
输入cd C:\Windows\Microsoft.NET\Framework\v4.0.30319\
,然后按ENTER。
键入aspnet_regiis.exe -ir
并再次按ENTER。
如果这是 IIS 的新版本(没有其他站点在其上运行),或者您不担心托管站点因框架更改而中断,您可以使用 -i
而不是 -ir
。这将为您更改他们的 AppPools,不需要第 5 步。
此时您将看到它开始为您将 .NET 的框架安装到 IIS 中
关闭 DOS 提示符,重新打开开始菜单并右键单击 计算机 并选择 管理
展开左侧(服务和应用程序)并选择Internet Information Services
您现在将在内容窗口中拥有一个专门用于 IIS 的新小程序。
展开您的计算机并找到 Application Pools 节点,然后选择它。 (您现在应该会看到 ASP.NET v4.0 列出)
展开您的站点节点并找到您要修改的站点(选择它)
在右侧,您会注意到编辑站点文本下方的基本设置...。点击它,应该会出现一个新窗口
使用 Select... 按钮选择 .NET 4 AppPool,然后单击确定。
重新启动网站,您应该可以正常使用了。
(您也可以对要应用 .NET 4 的每个站点重复第 7 步)。
其他参考:
-
.NET 4 Framework
该框架适用于尚未拥有它的用户。
How do I run a command with elevated privileges?
有关如何以管理员权限运行命令提示符的说明。
aspnet_regiis.exe options
对于那些可能想知道
-ir
或-i
做什么(或它们之间的区别)或其他可用选项的人。 (我通常使用-ir
来防止当前运行的任何旧网站因框架更改而中断,但这取决于您。)
【讨论】:
只需确保以管理员权限运行 cmd 提示符 感谢您 - 设置一个新的 Web 服务器安装了 Web PI、最新的框架更新以及您知道什么? IIS 甚至不知道 ASP.NET ......这种情况以前发生过太多次了,微软,你真的需要摆脱那些对此负责的小丑。 @Brad 我没有获得新的应用程序池。运行 regiis 的日志文件显示 .NET 4 已成功安装,现在我可以选择 .NET 4 作为站点的“ASP.NET 版本”。但似乎我仍然需要手动创建一个新的应用程序池(因为我不能在同一个池中混合 v2 应用程序和 v4 应用程序)。 @AaronLS:所以您的网站现在有 .NET 4 可见,但没有 .NET 4 AppPool 可供选择? 是的,正确的。 App Pools 节点没有任何新内容,并且从站点中没有可供选择的新池。我可以选择 .NET 4 作为“ASP.NET 版本”,但如果它位于带有 .NET 2 应用程序的默认应用程序池中,则它不会运行,并且事件日志显示有关运行的不同 .NET 版本的错误同一个应用程序池。如果相关的话,这是 IIS 6。所以我手动创建了一个新的应用程序池来放置我的新 .NET 4 应用程序。【参考方案2】:在 IIS 管理器的顶层(站点上方),您应该会看到应用程序池树节点。右键单击“应用程序池”,选择“添加应用程序池”。
为其命名,选择 .NET Framework 4.0 以及集成或经典模式。
当您添加或编辑网站时,您的新应用程序池现在将显示在列表中。
【讨论】:
【参考方案3】:打开一个 Windows 命令行。将目录切换到C:\Windows\Microsoft.Net\Framework\v4.0.xxxx
,其中 x 是内部版本号。输入aspnet_regiis -ir
并回车。这应该注册 .Net v4.0 并默认创建应用程序池。如果没有,您需要通过右键单击 IIS 中的 Application Pools
文件夹并选择 Add Application Pool
来手动创建它们。
编辑:作为参考,请参阅链接文档中引用 -i 参数的部分。
http://msdn.microsoft.com/en-us/library/k6h9cz8h.aspx
【讨论】:
(如果您已安装 .NET 4.0,但未注册 .NET 4.0 应用程序池,则执行此步骤)【参考方案4】:我刚刚遇到了这个问题,虽然我们已经在服务器上安装了 .NET 4.0,但事实证明我们只有“客户端配置文件”版本,而不是“完整”版本。安装后者解决了这个问题。
【讨论】:
【参考方案5】:安装 framework 4.0 redistributable 也足以创建应用程序池。你可以从heredownload它。
【讨论】:
以上是关于如何在 IIS 7、Windows 7 上将 ASP.NET 4.0 添加为应用程序池的主要内容,如果未能解决你的问题,请参考以下文章
如何在服务器端 IIS 7 Windows 7 Server 上配置 UrlRewritingNet
如何在 Windows 7 的 IIS 上发布 webservice
在 Windows XP 上将 IIS 5.1 升级到 IIS 6
在 Windows 7 上将“python2”路径添加到命令行