IIS升级导致基于SSRS的Web应用失败

1、应用无法访问,报内部500错误,指向web.config配置文件

完整错误日志如下:

配置错误 不能在此路径中使用此配置节。如果在父级别上锁定了该节,便会出现这种情况。
锁定是默认设置的(overrideModeDefault="Deny"),
或者是通过包含 overrideMode="Deny" 或旧有的 allowOverride="false" 的位置标记明确设置的。 

1)检查web.config文件,结构完整,没有被破坏。
2)根据报错经查,因为 IIS 7 采用了更安全的 web.config 管理机制,默认情况下会锁住配置项不允许更改。

解决方案:

运行命令行

C:\windows\system32\inetsrv\appcmd unlock config -section:system.webServer/handlers 。

其中的 handlers 是错误信息中红字显示的节点名称。
如果modules也被锁定,可以运行

C:\windows\system32\inetsrv\appcmd unlock config -section:system.webServer/modules

2、页面可以打开,但用到ReportServerService的图表打不开

检查应用,凡是嵌入SSRS(SQL Server Report Service)图表的都不能打开,纯web页面的可以打开。
访问:http://localhost/ReportServer 管理页面,也无法访问。
基本判定,是SSRS服务出问题了

3、检查SSRS日志,报错【未能加载文件或程序集“System.Core, Version=3.5.0.0】

完整错误日志如下:

library!DefaultDomain!1868!04/23/2019-16:55:16:: e ERROR: Throwing Microsoft.ReportingServices.Diagnostics.Utilities.ReportServerHttpRuntimeInternalException: Failed to intialize HTTP Runtime, Microsoft.ReportingServices.Diagnostics.Utilities.ReportServerHttpRuntimeInternalException: 应用程序域 ReportServer_SQL2008R2_0-8-132004832909290174 的 HTTP 运行时对象中发生内部错误或系统错误。  ---> System.TypeInitializationException: “Microsoft.ReportingServices.Diagnostics.Canonicalization”的类型初始值设定项引发异常。 --->
 System.IO.FileNotFoundException: 未能加载文件或程序集“System.Core, Version=3.5.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089”或它的某一个依赖项。系统找不到指定的文件。

SSRS日志路径:

C:\Program Files\Microsoft SQL Server\MSRS10_50.SQL2008R2\Reporting Services\LogFiles\ 

根据报错,经查是新的IIS没有安装 .NET Framework 3.5导致。
安装方法:
管理工具-》服务器管理器-》左侧,选择功能-》勾选:.Net Framework 3.5.1功能。安装后,重启IIS应用即可。

参考:

https://www.cnblogs.com/CoreXin/p/6918210.html
https://blog.csdn.net/plean/article/details/74295655#commentBox

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值