Windows Server 2008下 IIS (HTTP Error 500.21 - Internal Server Error)的解决方法
原来的windows server 2008 中已经安装了IIS,并且部署在上面的.net网站是可以正常访问的,但是在我卸载掉IIS角色并重新安装IIS之后,访问.net应用程序的时候页面报错:HTTP Error 500.21 - Internal Server Error,错误页面如下所示:
通过分析得知,我们若是先安装.NET Framework 4.0再安装IIS角色就可能遇到上述的错误,原因在于 IIS 角色在启用时并未更新现有的应用程序以使用ASP.NET 4 版本的应用程序集,以及在 IIS Metabase 中未更新传统模式及IIS整合模式下ASP.NET 4的处理方式与指令对应,以至于出现上诉的故障。
解决方法如下:
1、在系统中定位到.net程序的文件夹,查看已有的.net版本,一般在目录“C:\Windows\Microsoft.NET\Framework”下,由此得知我们需要安装的.net对象的路径:
2、用管理员身份打开cmd命令提示窗口,在其中定位到需要安装的.net文件路径下,由步骤1得知的路径为:C:\Windows\Microsoft.NET\Framework\v4.0.30319
注意:上图中红色线下划线标注的文字对应系统目录中相应的.net版本。
3、在对应目录下执行“aspnet_regiis -i”命令安装.net 4.0,如下图:
按照以上步骤安装.net 4.0之后,重新启动IIS,再次访问网站,页面可正常访问,不再报错。
----END