我已经在现有的 Windows Server 2012 IIS 安装上添加了一个新网站。安装已经在现有站点上配置了 ASP.NET。
在新网站上启用 ASP.NET 的正确方法是什么?我发现的所有文档都谈到使用服务器管理器添加角色/功能,但这些已经存在,因此没有帮助。
在以前的版本中我会使用aspnet_regiis -i
但它在 Server 2012 上不起作用:
C:\Windows\Microsoft.NET\Framework\v4.0.30319>aspnet_regiis -i
Microsoft (R) ASP.NET RegIIS version 4.0.30319.17929
Administration utility to install and uninstall ASP.NET on the local machine.
Copyright (C) Microsoft Corporation. All rights reserved.
Start installing ASP.NET (4.0.30319.17929).
This option is not supported on this version of the operating system. Administr
ators should instead install/uninstall ASP.NET 4.5 with IIS8 using the "Turn Win
dows Features On/Off" dialog, the Server Manager management tool, or the dism.e
xe command line tool. For more details please see http://go.microsoft.com/fwlin
k/?LinkID=216771.
Finished installing ASP.NET (4.0.30319.17929).
正确的程序是什么?
编辑:这是一个截屏证明角色配置正确。
该机器正在另一个网站上正确运行 ASP.NET 应用程序,因此我知道该角色已 100% 正确安装。
答案1
- 打开 IIS 管理器
- 展开服务器名称节点
- 选择“网站”
- 在‘操作’部分按‘添加网站...’
- 设置“站点名称”、“物理路径”和“绑定”,然后按“确定”。请注意,IIS8 中的 DefaultAppPool 适用于 Asp.Net4
下一步适用于 IIS8:
展开“默认网站”。您的站点名称应位于下方。
右键单击您的站点名称,然后按“转换为应用程序”
就是这样。现在它应该可以工作了。
我花了三个小时才找到右键单击->转换为应用程序...我希望这个答案可以节省其他人的时间。
答案2
最后,我删除了已安装的 ASP.NET 3.5 和 4.5 功能,然后又将它们放回去(我还必须为每个功能重新安装 WCF HTTP 激活)。这样新网站就可以正常运行,而且似乎其他现有的 ASP.NET 网站和应用程序也可以正常运行,不过如果不进行更多测试,我无法确定。
这显然是一个非常愚蠢的解决方案,因为它冒着破坏服务器上现有 ASP.NET 应用程序的风险,并且肯定意味着这些应用程序在此过程中毫无理由地停机。但它确实有效。
答案3
您需要在第二步在服务器上安装 IIS 时在功能中选择 ASP.NET 4.5。您必须在服务器上安装 IIS 时选择所有功能。您可以查看IIS 安装网址以了解更多。