HTTP 错误 500.22 - Internal Server Error或者无法访问静态页面,可能是内部包含.NET FRAMEWORK4.的DLL的原因,静态页面都无法访问。
HTTP 错误 500.22 - Internal Server Error
Win7 IIS7.5环境下,运行刚建的网站,出现
IIS 7.5 详细错误-500.22-Internal Server Error“的错误信息,如图:
百度后,找到解决方法。
打开IIS ,然后在右面”基本设置”-选择,然后将网站的应用程序池由DefaultAppPool默认改为Clssic .Net AppPool即可。
解决方法:
HTTP 错误 500.22 - Internal Server Error
检测到在集成的托管管道模式下不适用的 ASP.NET 设置。
打开IIS,右边操作里选基本设置,应用程序池旁边点选择,选为Classic .net AppPool,就将管理模式切换为了经典模式就OK了。
==================
ISAPI 和 CGI 限制是允许在服务器上执行动态内容的请求处理程序。这些限制为 CGI 文件 (.exe) 或 ISAPI 扩展 (.dll)。如果 IIS 配置系统允许添加自定义 ISAPI 或 CGI 限制,则我们可以添加它们。
(一)添加 ISAPI 或 CGI 限制
利用 ISAPI 和 CGI 限制,可以控制是否提供动态内容。在服务器上,动态内容以 CGI 文件 (.exe) 或 ISAPI 扩展 (.dll) 的形式存在。实现步骤如下:
1. 打开 IIS 管理器,然后导航至要配置的级别。
2. 在"功能视图"中,双击"ISAPI 和 CGI 限制"。
3. 在"操作"窗格中,单击"添加"。
4. 在"添加 ISAPI 或 CGI 限制"对话框的"ISAPI 或 CGI 路径"文本框中键入该 .dll 或 .exe 文件的路径,或者单击浏览按钮 (...) 导航至该文件的位置。
5. 在"描述"文本框中,键入有关限制的简要描述。
6. 选中"允许执行扩展路径",以允许限制自动运行。如果未选中此选项,限制的状态将默认为"不允许"。以后,您可以通过选择限制并在"操作"窗格中单击"允许"来允许该限制。
7. 单击"确定"。
(二)编辑 ISAPI 或 CGI 限制
如果要更改 .exe 或 .dll 文件的位置或描述,或者更改 ISAPI 或 CGI 限制的状态,就需要对这些限制进行编辑。具体步骤如下:
1. 打开 IIS 管理器,然后导航至要配置的级别。
2. 在"功能视图"中,双击"ISAPI 和 CGI 限制"。
3. 从列表中选择一种限制,然后在"操作"窗格中单击"编辑"。
4. (可选)在"编辑 ISAPI 或 CGI 限制"对话框的"ISAPI 或 CGI 路径"文本框中,键入 .dll 或 .exe 文件的新路径,或单击浏览按钮 (...) 导航至该文件的位置。
5. (可选)在"描述"文本框中,键入有关该限制的新描述。
6. (可选)选中"允许执行扩展路径",以允许该 CGI 或 ISAPI 限制运行。如果未选中此选项,限制的状态将默认为"不允许"。以后,通过选择该限制并在"操作"窗格中单击"允许"或"拒绝",可以更改该限制的状态。
7. 单击"确定"。
(三)删除 ISAPI 或 CGI 限制
如果你不再需要提供由特定 ISAPI 或 CGI 限制定义的内容类型,则可以从服务器上的限制列表中删除该限制。
1. 打开 IIS 管理器,然后导航至要配置的级别。
2. 在"功能视图"中,双击"ISAPI 和 CGI 限制"。
3. 从列表中选择一个限制。
4. 在"操作"窗格中,单击"删除"。
5. 在"确认删除"对话框中,单击"是"。
(四)将未指定的文件扩展名设置为在 Web 服务器上运行
如果在 ISAPI 模式下运行 IIS 7.0,可以允许未指定文件扩展名的文件(即所有可执行文件)在 Web 服务器上运行。如果您是在集成模式下运行 IIS 7.0,则不提供此功能。
. 打开 IIS 管理器,然后导航至要配置的级别。
2. 在"功能视图"中,双击"ISAPI 和 CGI 限制"。
3. 在"操作"页上,单击"编辑功能设置"。
4. 也可以在"编辑 ISAPI 和 CGI 限制设置"对话框中选中"允许未指定的 CGI 模块",以便允许未指定的 CGI 模块。
5. 也可以选中"允许未指定的 ISAPI 模块",以便允许未指定的 ISAPI 模块。
6. 单击"确定"。
ISAPI 和 CGI 限制功能要求 (IIS 7)应用到: Windows 7, Windows Server 2008, Windows Server 2008 R2, Windows Vista本主题介绍配置 ISAPI 和 CGI 限制时的要求。备注 有关这些要求的例外情况,请参阅各个过程。 级别 扩展限制的配置过程可以在 IIS 中的以下级别执行:Web 服务器模块和处理程序 必须在 Web 服务器上安装必需的模块和处理程序,且必须在您执行此过程的级别启用它们。 备注 模块只能在 Web 服务器、站点和应用程序级别启用,但处理程序可以在所有级别启用。 以下模块是必需的:CgiModuleIsapiModule以下处理程序是必需的:用于 配置元素的 ISAPI-dll用于 配置元素的 ASPClassic用于 配置元素的 SecurityCertificate必需的权限 如果要使用 IIS 管理器执行本节中的过程,您必须是服务器管理员。 如果您通过使用 Appcmd.exe、运行 WMI 脚本或编辑配置文件来执行本节中的过程,则您必须对目标配置文件具有写入权限。
====================================实践整理==========================
配置ASP.NET 4。0网站的设置:(未进行安全的设定)
1)新建一个站点,配置好端口,系统将自动生成一个同名的应用程序池,默认是执行.NET 2.0的程序,你需要调整设置好.NET 4.0 Framework ..,你默认是经典,也可以设定成经典(通常使用经典),还有就是集成,暂时不懂什么区别。
2)设置好WEB的权限,权限,也就是用户怎么通过IIS的角色进行访问,网上通用的做法是直接添加计算机的用户权限,在【基本选项】里面测试。
当然可能不安全了。
3)设置好这个目录的安全级别,起码要添加IIS_USER权限。
3)补充,防火墙
如果你精通配置,可以打开WINDOWS 防火墙,设置出站规则,如果不行,就关闭它,省事。
确认杀毒软件的软防火墙的级别。不行也关了。
4)ISAPI 和 CGI 限制
在IIS 7里面是[处理程序影射】,禁用了ISAP-dll,*.dll,处理程序:isapiMoudle,删除此项,就可以访问C#的DLL文件
5)身份验证:
我是都开启了,我感觉不用。
6)配置连接串和程序串,还可以设定【授权规则】和【请求筛选】,在请求筛选设定隐藏端目录等等,以及相关的文件名。扩展名等等。对于Silverlight程序,WAP程序需要配置MIME。
7)测试简单的html页面,判断IIS是否工作,如果不工作,主要和ISAPI 和 CGI 限制有关,调整【处理程序映射】或者目录权限,WEB权限等。
8)其他需要测试的是解析ASP.NET,C#.DLL的能力,可以考虑身份验证。等内容。