IIS中ASP.NET的版本号此时可选的有1.1、2.0和4.0三个,如果想让IIS把3个版本都集成上,那NET Framework 3种都要安装,默认安装到的是C盘。
IIS注册方式如下:
1.1:C:\WINDOWS\Microsoft.NET\Framework\v1.1.4322\aspnet_regiis.exe -i
2.0:C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\aspnet_regiis.exe -i
4.0:C:\WINDOWS\Microsoft.NET\Framework\v4.0.30319\aspnet_regiis.exe -i
常见问题2:安装好 .NET 4 后还是找不到设定网站站台的 ASP.NET 页签的 ASP.NET 4.0 的选项
这问题通常出在先安装 Microsoft .NET Framework 4 才安装 IIS6,这时必须输入以下指令将 ASP.NET 4.0 注册进 IIS6 即可:
C:\WINDOWS\Microsoft.NET\Framework\v4.0.30319\aspnet_regiis.exe -ir -enable
常见问题3:安装好 .NET 4 也设定好网站站台的 ASP.NET 4.0 的选项依然无法执行网站
这里的「无法执行网站」其实所有执行的页面都会出现 找不到这个页面 (HTTP 错误 404 - 找不到档案或目录) 的响应,不管你怎么设定目录安全性或任何执行权限都无法执行任何 ASP.NET 程序,而且可能只有静态页面可以读取而已,像是如下图示这么一般性的错误讯息真的很容易让 IT 人员不知如何是好:
如果你因为安装 ASP.NET MVC 而有设定「万用字符应用程序对应」的话,则会发现网站所有页面包括静态档案读去都会响应 找不到这个页面 的错误!
此问题发生的原因是 IIS6 阻挡了 c:\windows\microsoft.net\framework\v4.0.30319\aspnet_isapi.dll 程序的执行,由于所有会被导向到此 ISAPI Handler 的要求全部都会失败,所以才会导致你所有 HTTP 要求都会得到 HTTP 404 Not Found 的结果。
解决方式很简单,只要到 [网页服务延伸] 的地方将 ASP.NET v4.0.30319 设定 [允许] 即可,如下图示:
常见问题4:ASP.NET 4.0 的网站站台已经设定好也可以正常执行了,但执行一段时间会自己挂掉!
如果你在同一个应用程序集区设定了两个不同版本的 ASP.NET 就会造成这个问题,例如你原本有个 ASP.NET 2.0 的站台,并且设定的应用程序集区为 DefaultAppPool,然而你之后又新增了一个 ASP.NET 4.0 的站台,而预设的应用程序集区也是在 DefaultAppPool 的话就会发生冲突了,这时就会看是哪个站台先被执行起来,先跑起来的那个站台才会抢到所有权,后面执行的那个就会发生 Server Application Unavailable 或 服务器应用程序无法使用 的错误:
解决的方法有二:
- 将共享应用程序集区的 网站站台 或 网站应用程序(虚拟目录) 都设定到 ASP.NET v4.0.30319
- 区分两个不同的应用程序集区