• 在 IIS6 ASP.NET 4.0 安装 最常遇到的四个问题


    在 IIS6 ASP.NET 4.0 安装 最常遇到的四个问题

    昨天同事将一个 ASP.NET 4.0 的网站安装到客户的 IIS6 主机上 (测试环境),结果过程非常不顺利,他们曾经一度觉得客户的主机不知道经过几只手蹂躏过了(因为有好多人在共享 Administrator 账号)进而产生排斥安装在客户主机以及 “为什么我们要用 ASP.NET 4” 的感觉,不过在一群人的努力之下最后还是克服了困难,我特别因此写下笔记,相信这些问题有其他人也可能会遇到。

    要执行 ASP.NET 4.0 网站必须先安装 Microsoft .NET Framework 4

    clip_image002

    安装前必须先确定你的操作系统版本是在支持的范围内:

    • Windows XP SP3
    • Windows Server 2003 SP2
    • Windows Vista SP1 (含) 以后版本
    • Windows Server 2008 (服务器核心角色不支持)
    • Windows 7
    • Windows Server 2008 R2 (服务器核心角色不支持)

    常见问题1:设定网站站台ASP.NET 页签时找不到 ASP.NET 4.0 的选项

    clip_image004

    注意:如果你只有安装 .NET Framework Client Profile 是不支援 ASP.NET 的,必须下载 Microsoft .NET Framework 4 (独立安装程序) 来安装才会完整。

    clip_image006

    正常来说,只要 Windows Server 2003 已经先安装好 IIS 再安装 Microsoft .NET Framework 4 就可以在 IIS 6.0 网站站台ASP.NET 页签找到 ASP.NET 4.0 的选项:

    clip_image008

    常见问题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

    clip_image010

    常见问题3:安装好 .NET 4 也设定好网站站台的 ASP.NET 4.0 的选项依然无法执行网站

    这里的「无法执行网站」其实所有执行的页面都会出现 找不到这个页面(HTTP 错误 404 - 找不到档案或目录) 的响应,不管你怎么设定目录安全性或任何执行权限都无法执行任何 ASP.NET 程序,而且可能只有静态页面可以读取而已,像是如下图示这么一般性的错误讯息真的很容易让 IT 人员不知如何是好:

    clip_image012

    如果你因为安装 ASP.NET MVC 而有设定「通配符应用程序对应」的话,则会发现网站所有页面包括静态档案读去都会响应 找不到这个页面的错误!

    clip_image014

    此问题发生的原因是 IIS6 阻挡了 c:\windows\microsoft.net\framework\v4.0.30319\aspnet_isapi.dll 程序的执行,由于所有会被导向到此 ISAPI Handler 的要求全部都会失败,所以才会导致你所有 HTTP 要求都会得到 HTTP 404 Not Found 的结果。

    解决方式很简单,只要到 [网页服务延伸] 的地方将 ASP.NET v4.0.30319 设定 [允许]即可,如下图示:

    clip_image016

    常见问题4:ASP.NET 4.0 的网站站台已经设定好也可以正常执行了,但执行一段时间会自己挂掉!

    如果你在同一个应用程序集区设定了两个不同版本的 ASP.NET 就会造成这个问题,例如你原本有个 ASP.NET 2.0 的站台,并且设定的应用程序集区为 DefaultAppPool,然而你之后又新增了一个 ASP.NET 4.0 的站台,而默认的应用程序集区也是在 DefaultAppPool 的话就会发生冲突了,这时就会看是哪个站台先被执行起来,先跑起来的那个站台才会抢到所有权,后面执行的那个就会发生 Server Application Unavailable 或 服务器应用程序无法使用 的错误:

    clip_image018

    解决的方法有二:

    • 将共享应用程序集区的 网站站台网站应用程序(虚拟目录) 都设定到 ASP.NET v4.0.30319
    • 区分两个不同的应用程序集区

    摘自:http://www.cnblogs.com/RuiLei/archive/2010/08/14/1799558.html

  • 相关阅读:
    可移动的按钮
    .NET及JAVA 中如何使用代码启动程序
    SQL一对多特殊查询,取唯一一条
    jquery,字符串转json对象,json对象转字符串
    jQuery的ajax()、post()方法提交数组,参数[] 问题
    Sql Server中实现Mysql中的group_concat函数效果
    SQL:REGEXP
    sql:CallableStatement执行存储过程
    js去除前后空格
    jsp中常用操作字符串的el表达式
  • 原文地址:https://www.cnblogs.com/cmblogs/p/2870115.html
Copyright © 2020-2023  润新知