sharepoint 打开网站或搜索变慢
打开sharepoint网站或者搜索的速度有时会变慢,微软官方解释为sharepoint网站的证书验证
症状:您有一个Web应用程序在SharePoint Foundation 2010或SharePoint Server 2010使用基于声明的身份验证。SharePoint服务器没有开放有限端口通过防火墙访问互联网或服务器的保护。间歇性,用户经历较长时间的延误时,执行某些操作,如登录到该网站,或执行搜索。执行这些操作时,用户还可以看到HTTP超时。
导致: SharePoint使用证书进行签名发出的安全令牌的安全令牌服务(STS)。所有的证书一样,STS证书的有效性进行验证,以确保该证书已被撤销定期。默认情况下,根证书链中没有添加到受信任的根证书颁发机构存储在SharePoint服务器。正因为如此,在互联网上进行CRL检查证书。如果在线的的CRL服务器可以从SharePoint服务器由于某种原因不能达到,操作超时后,默认情况下为15秒。即使CRL验证失败,15秒后,仍可能呈现SharePoint页面的延迟之后。证书验证失败使CAPI2事件记录在SharePoint服务器上,可以跟踪。当CAPI2启用事件记录和网上证书验证失败,CAPI2事件日志中经常你会看到下面的错误信息
- Build Chain Error
Event ID: 11
Task Category: Build Chain
subjectName (taken from event details): SharePoint Security Token Service - Retrieve Object from Network Error
Event ID: 53
Task Category: Retrieve Object from Network
URL (taken from event details): http://download.windowsupdate.com/msdownload/update/v3/static/trusted/en/authrootstl.cab
解决方法:
- 导出SharePoint根颁发机构的证书作为一个物理文件(。CER)。启动SharePoint 2010中的命令行管理程序作为管理员运行下面的PowerShell命令
$rootCert = (Get-SPCertificateAuthority).RootCertificate $rootCert.Export("Cert") | Set-Content C:\SharePointRootAuthority.cer -Encoding byte
注意:这将导出为SharePoint 内部的根证书(。cer的文件)到C:\。您可以复制并使用此场中的所有服务器上的文件导入,而无需再次运行PowerShell命令。
- 导入SharePoint根管理局证书的受信任的根证书颁发机构存储区要添加SharePoint根颁发机构的证书到受信任的根证书颁发机构存储:
注:管理员是完成下列步骤所需的最低组成员
- 单击“ 开始“ 开始搜索“,键入“ MMC“ ,然后按ENTER键。
- 在文件菜单上,单击“ 添加/删除管理单元“
- 在可用的管理单元,单击“ 证书“,然后单击“ 添加“
- 在此管理单元将始终管理的证书,请单击“计算机帐户”,然后单击“ 下一步“
- 单击“本地计算机”,然后单击“ 完成“
- 如果你没有更多的管理单元添加到控制台中,单击“确定”
- 在控制台树中,双击“ 证书“
- 右键单击“ 受信任的根证书颁发机构存储
- 单击“ 所有任务“,导入导入证书,并按照证书导入向导“中的步骤
- http://support.microsoft.com/kb/2625048
同样情况有以下参考:
http://www.cnblogs.com/ahghy/archive/2012/10/24/2736964.html
http://blog.csdn.net/h0017809/article/details/4061765
个人测试结果:设置证书不自动更新并不能完全解决问题,微软推荐的方式手动导入证书比较科学的做法,同时可以设置不自动更新证书。