客户使用Windows server 2012 运行ASP.NET的网站,访问任何ASPX的页面都是提示404的报错,刚开始怀疑是没有安装.net的版本导致的,查看.net的版本有正常安装了。

尝试解决方案

如果安装了.NET了,Aspx网站访问网站出现404,参考以往的经验使用在命令行输入以下命令启用 Aspx.net

1、CMD运行启用 .NET 2:C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\aspnet_regiis.exe -i

提示:pkgmgr.exe 被弃用了,需要使用DISM.exe进行安装、卸载配置


2、CMD命令启用 .NET 4.5:C:\WINDOWS\Microsoft.NET\Framework\v4.0.30319\aspnet_regiis.exe -i

提示:此操作系统版本不支持此选项

C:\WINDOWS\system32>c:\windows\microsoft.net\framework64\v4.0.30319\aspnet_regiis.exe -i 
Microsoft (R) ASP.NET RegIIS 版本 4.0.30319.0 
用于在本地计算机上安装和卸载 ASP.NET 的管理实用工具。 
版权所有(C) Microsoft Corporation。保留所有权利。 
开始安装 ASP.NET (4.0.30319.0)。 
此操作系统版本不支持此选项。管理员应使用“打开或关闭 Windows 功能”对话框、“服务器管理器”管理工具或 dism.exe 命令行工 具安装/卸载包含 IIS8 的 ASP.NET 4.5。
有关更多详细信息,请参见 http://go.microsoft.com/fwlink/?LinkID=216771。 
ASP.NET (4.0.30319.0)安装完毕。

最终解决方法:

在互联网上参考了非常多的文章,才找到了解决方案

1、控制面板 - 程序和功能 - 启动或关闭windows功能 - Internet Information services - 万维网服务 - 应用程序开发功能勾选:

ASP.NET 3.5

ASP.NET 4.7

ISAPI扩展

ISAPI筛选器

.NET Extensibility 3.5

.NET Extensibility 4.7


2、在添加角色和向导中确认安装


3、安装完成后,测试服务器已经支持.net了,完美解决。

总结

在windows server 2012或更高的windows server版本是启动和安装.NET均需要通过服器管理界面的添加角色来完成的