关键词:ASP.NET ,IIS ,命令提示符,dism
使用ASP.NET MVC开发了一个WEB网站,已经在本机进行了测试和发布。将发布后的文件夹移植到服务器上出现了些许问题。移植到的电脑是Windows Server2012系统,将发布后的文件夹部署到IIS应用池中,打开网址出现如下错误。
原因:
在安装Framework v4.0之后,再启用IIS,导致Framework没有完全安装
网上搜到的解决方案如下:
解决:开始->所有程序->附件->鼠标右键点击“命令提示符”->以管理员身份运行,输入以下命令:
%windir%\\Microsoft.NET\\Framework\\v4.0.30319\\aspnet_regiis.exe -i
如果出现错误提示“aspnet_regiis.exe 不是有效的Win32应用程序”,可能是因为你的aspnet_regiis.exe损坏了。
去c:\windows\microsoft.net\framework\v4.0.30319目录下查看下asp.net_regiis.exe的大小(v4.0.30319是.Net Frameworkde的版本号),如果是0kb,则去安装了.net framework v4.0.30319的电脑上在相同的目录下拷贝一个覆盖即可。
如果有安装 Microsoft Visual Studio 2012 也可以通过以下方法修复 .Net Framework。
1. 开始 -> 所有程序 -> Microsoft Visual Studio 2012 -> Visual Studio Tools -> VS2012 x64 兼容工具命令提示
2. 先后输入以下命令:
cd\Windows\Microsoft.NET\Framework64\v4.0.30319\SetupCache
回车
setup.exe /repair /x86 /x64 /ia64 /norestart
回车
出现了.Net Framework 的修复引导界面,选择修复。等它修复完成之后,重启iis。
cmd中输入iisreset就OK了。
按照这个方法,我一开始没有成功,报错的提示是这样
我又搜到了一个更加详细的博客,写的很详细
https://www.cnblogs.com/chenz/articles/2403341.html
但是当我按照文章最后输入“aspnet_regiis -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)安装完毕。
那可能就是跟我现在的操作系统有关系了。我的操作系统是Windows Server2012.后来就又搜索了解决方案。网上大神是真的多
后来辗转找到了一篇文章,原文如下:http://www.jb51.net/os/windows/509075.html,利用dism工具 执行下面命令才成功
dism /online /enable-feature /featurename:IIS-ISAPIFilter dism /online /enable-feature /featurename:IIS-ISAPIExtensions dism /online /enable-feature /featurename:IIS-NetFxExtensibility45 dism /online /enable-feature /featurename:IIS-ASPNET45
总结:解决方案如下
cmd命令进入目录 c:\windows\microsoft.net\framework64\v4.0.30319
输入如下4条命令安装ASP.NET
dism /online /enable-feature /featurename:IIS-ISAPIFilter
dism /online /enable-feature /featurename:IIS-ISAPIExtensions
dism /online /enable-feature /featurename:IIS-NetFxExtensibility45
dism /online /enable-feature /featurename:IIS-ASPNET45