浏览器异常关闭的处理方法、系统、浏览器和服务器的制造方法

文档序号:7774190阅读:202来源:国知局
浏览器异常关闭的处理方法、系统、浏览器和服务器的制造方法
【专利摘要】本发明公开了一种浏览器异常关闭的处理方法、系统、浏览器和服务器,以解决浏览器异常关闭的问题。其中方法包括:接收浏览器侧在异常关闭后重启时上传的浏览器的重启信息,依据重启信息查询服务器侧记录的浏览器的在先异常关闭信息;异常关闭信息包括引发异常关闭的组件信息及其运行环境信息;若服务器侧依据引发异常关闭的组件信息及其运行环境信息,判定由同一组件在相同运行环境下引发同一类型异常关闭的次数超过预设阈值,则依据组件的信息生成阻止加载指令,将阻止加载指令下发至浏览器侧,浏览器侧用于依据阻止加载指令阻止加载组件。本发明在浏览器重启之后不会再由于同样的原因导致再次异常关闭,从根本上解决了浏览器异常关闭的问题。
【专利说明】浏览器异常关闭的处理方法、系统、浏览器和服务器
【技术领域】
[0001]本发明涉及浏览器【技术领域】,具体涉及一种浏览器异常关闭的处理方法、一种浏览器异常关闭的处理系统、一种浏览器和一种服务器。
【背景技术】
[0002]随着互联网的日益普及,人们很多的日常工作和娱乐都在网络上进行,网页浏览器为人们的这种工作和娱乐提供了便捷途径。网页浏览器是指可以显示网页服务器或者档案系统内的文件,并让用户与这些文件交互的一种软件。它用来显示在万维网或局部局域网络等内的文字、影像及其他资讯,这些文字或影像,可以是连接其他网址的超链接,通过网页浏览器用户可迅速及轻易地浏览各种资讯。
[0003]但是,在使用网页浏览器浏览网页、进行网页加载的过程中,常常由于种种原因使得网页浏览器反应变得很慢,或者造成网页浏览器失去响应,最终导致浏览器异常关闭,进而可能连带整个系统都无法进行其他的操作。导致浏览器异常关闭的原因很多,例如在浏览器中安装第三方插件,由于第三方插件和浏览器软件的兼容性不是很好就会出现问题导致浏览器的异常关闭;或者由于第三方的安全软件使得浏览器出现了异常关闭;或者是浏览器自身的组件或者模块(例如GPU (Graphic Processing Unit,图形处理器)加速组件)导致浏览器出现了异常关闭。
[0004]目前对于浏览器异常关闭时的处理方法主要是:在浏览器发生异常关闭时获取异常关闭信息,并将异常关闭信息上传到服务器中,然后重新启动浏览器。
[0005]但是,上述方法仅仅是将异常关闭信息上传到服务器中,因此在浏览器重新启动之后仍然可能由于同样的原因导致再次异常关闭,即上述方法无法从根本上解决浏览器异常关闭的问题。

【发明内容】

[0006]鉴于上述问题,提出了本发明以便提供一种克服上述问题或者至少部分地解决上述问题的一种浏览器异常关闭的处理方法和相应的一种浏览器异常关闭的处理系统,以及一种浏览器和相应的一种服务器。
[0007]依据本发明的一个方面,提供了一种浏览器异常关闭的处理方法,包括:
[0008]接收浏览器侧在异常关闭后重启时上传的所述浏览器的重启信息,依据所述重启信息查询服务器侧记录的所述浏览器的在先异常关闭信息;所述异常关闭信息包括引发异常关闭的组件信息及其运行环境信息;
[0009]若服务器侧依据所述引发异常关闭的组件信息及其运行环境信息,判定由同一组件在相同运行环境下引发同一类型异常关闭的次数超过预设阈值,则依据所述组件的信息生成阻止加载指令,并将所述阻止加载指令下发至浏览器侧,所述浏览器侧用于依据所述阻止加载指令阻止加载所述组件。
[0010]可选地,所述依据所述组件的信息生成阻止加载指令的步骤包括:[0011]依据所述组件的信息判定所述组件是否为非关键组件;
[0012]若是,则生成阻止加载指令。
[0013]可选地,所述方法还包括:
[0014]在依据所述组件的信息判定所述组件为关键组件时,生成提示版本更新的指令;
[0015]将所述提示版本更新的指令下发至浏览器侧,所述浏览器侧还用于依据所述提示版本更新的指令加载所述组件,并显示所述组件版本更新的提示信息。
[0016]可选地,所述方法还包括:
[0017]在依据所述组件的信息判定所述组件为不安全组件时,生成黑名单写入指令;
[0018]将所述黑名单写入指令下发至浏览器侧,所述浏览器侧还用于依据所述黑名单写入指令阻止加载所述组件,并将所述组件写入浏览器侧的黑名单。
[0019]可选地,所述方法还包括:
[0020]在依据所述组件的信息判定所述组件为不安全组件时,将所述组件写入服务器侧的黑名单,所述浏览器侧还用于阻止加载所述组件。
[0021]可选地,所述依据所述组件的信息判定所述组件是否为非关键组件的步骤包括:
[0022]查找预先配置的不稳定组件名单中是否存在所述组件的信息;
[0023]若存在,则确定所述组件为非关键组件;
[0024]若不存在,则确定所述组件为关键组件。
[0025]可选地,所述浏览器异常关闭包括由Flash、第三方安全组件或浏览器内部组件为第三方软件、分层服务提供程序LSP、插件、扩展、图形处理器GPU加速中的任意一个或多个引起的异常关闭。
[0026]可选地,所述方法还包括:
[0027]接收并记录浏览器侧在异常关闭时上传的所述浏览器的异常关闭信息。
[0028]可选地,所述引发异常关闭的组件信息包括:所述组件的名称、所述组件的版本和所述组件的MD5值;所述引发异常关闭的组件的运行环境信息包括:所述组件运行时的操作系统版本和所述组件运行时的浏览器内核版本。
[0029]可选地,所述异常关闭信息还包括,异常关闭的类型以及异常参数值,所述异常关闭的类型包括访问违例EXCEPT10N_ACCESS_V10LAT10N,所述异常参数值包括内存地址偏移量。
[0030]可选地,所述异常关闭的类型还包括:除零错误、内存耗尽、以及调试断点。
[0031]可选地,所述重启信息包括所述浏览器内核的版本信息以及所述浏览器所在的设备信息;所述服务器侧记录的所述浏览器的在先异常关闭信息为,与所述浏览器内核的版本信息以及所述浏览器所在的设备信息相匹配的在先异常关闭信息。
[0032]根据本发明的另一方面,提供了一种浏览器异常关闭的处理方法,包括:
[0033]在浏览器异常关闭后重启时,将所述浏览器的重启信息上传至服务器侧;
[0034]接收服务器侧下发的阻止加载指令;所述阻止加载指令为所述服务器侧依据组件的信息生成的指令,所述组件为在相同运行环境下引发同一类型异常关闭的次数超过预设阈值的组件,所述在相同运行环境下引发同一类型异常关闭的次数从所述服务器侧记录的所述浏览器的在先异常关闭信息获得,所述异常关闭信息包括引发异常关闭的组件信息及其运行环境信息;所述在先异常关闭信息由所述服务器侧依据所述重启信息查询获得;[0035]依据所述阻止加载指令阻止加载所述组件。
[0036]可选地,所述阻止加载指令为,所述服务器侧在依据所述组件的信息判定所述组件为非关键组件时生成的阻止加载指令。
[0037]可选地,所述方法还包括:
[0038]接收服务器侧下发的、在依据所述组件的信息判定所述组件为关键组件时生成的提示版本更新的指令,依据所述提示版本更新的指令加载所述组件,并显示所述组件版本更新的提示信息。
[0039]可选地,所述方法还包括:
[0040]接收服务器侧下发的、在依据所述组件的信息判定所述组件为不安全组件时生成的黑名单写入指令,依据所述黑名单写入指令阻止加载所述组件,并将所述组件写入浏览器侧的黑名单。
[0041 ] 可选地,所述方法还包括:
[0042]在浏览器异常关闭时,将所述浏览器的异常关闭信息上传至服务器侧。
[0043]可选地,在将重启信息上传至服务器侧的步骤之前,还包括:
[0044]加载弹窗显示是否进入安全模式的提示信息;
[0045]当用户确认进入安全模式后,执行所述将重启信息上传至服务器侧的步骤。
[0046]可选地,所述引发异常关闭的组件信息包括:所述组件的名称、所述组件的版本和所述组件的MD5值;所述引发异常关闭的组件的运行环境信息包括:所述组件运行时的操作系统版本和所述组件运行时的浏览器内核版本。
[0047]可选地,所述重启信息包括所述浏览器内核的版本信息以及所述浏览器所在的设备信息;所述服务器侧记录的所述浏览器的在先异常关闭信息为,与所述浏览器内核的版本信息以及所述浏览器所在的设备信息相匹配的在先异常关闭信息。
[0048]根据本发明的另一方面,提供了一种服务器,包括:
[0049]接收查询模块,适于接收浏览器侧在异常关闭后重启时上传的所述浏览器的重启信息,依据所述重启信息查询服务器侧记录的所述浏览器的在先异常关闭信息;所述异常关闭信息包括引发异常关闭的组件信息及其运行环境信息;
[0050]第一生成模块,适于在服务器侧依据所述引发异常关闭的组件信息及其运行环境信息,判定由同一组件在相同运行环境下引发同一类型异常关闭的次数超过预设阈值时,依据所述组件的信息生成阻止加载指令;
[0051]第一下发模块,适于将所述阻止加载指令下发至浏览器侧,所述浏览器侧用于依据所述阻止加载指令阻止加载所述组件。
[0052]可选地,所述第一生成模块还适于:
[0053]依据所述组件的信息判定所述组件是否为非关键组件;若是,则生成阻止加载指令。
[0054]可选地,所述服务器还包括:
[0055]第二生成模块,适于在依据所述组件的信息判定所述组件为关键组件时,生成提示版本更新的指令;
[0056]第二下发模块,适于将所述提示版本更新的指令下发至浏览器侧,所述浏览器侧还用于依据所述提示版本更新的指令加载所述组件,并显示所述组件版本更新的提示信肩、O
[0057]可选地,所述服务器还包括:
[0058]第三生成模块,适于在依据所述组件的信息判定所述组件为不安全组件时,生成黑名单写入指令;
[0059]第三下发模块,适于将所述黑名单写入指令下发至浏览器侧,所述浏览器侧还用于依据所述黑名单写入指令阻止加载所述组件,并将所述组件写入浏览器侧的黑名单。
[0060]可选地,所述服务器还包括:
[0061]写入模块,适于在依据所述组件的信息判定所述组件为不安全组件时,将所述组件写入服务器侧的黑名单,所述浏览器侧还用于阻止加载所述组件。
[0062]可选地,所述第一生成模块还适于:
[0063]查找预先配置的不稳定组件名单中是否存在所述组件的信息;
[0064]若存在,则确定所述组件为非关键组件;
[0065]若不存在,则确定所述组件为关键组件。
[0066]可选地,所述浏览器异常关闭包括由Flash、第三方安全组件或浏览器内部组件为第三方软件、分层服务提供程序LSP、插件、扩展、图形处理器GPU加速中的任意一个或多个引起的异常关闭。
[0067]可选地,所述服务器还包括:
[0068]接收记录模块,适于接收并记录浏览器侧在异常关闭时上传的所述浏览器的异常关闭信息。
[0069]可选地,所述引发异常关闭的组件信息包括:所述组件的名称、所述组件的版本和所述组件的MD5值;所述引发异常关闭的组件的运行环境信息包括:所述组件运行时的操作系统版本和所述组件运行时的浏览器内核版本。
[0070]可选地,所述异常关闭信息还包括,异常关闭的类型以及异常参数值,所述异常关闭的类型包括访问违例EXCEPT10N_ACCESS_V10LAT10N,所述异常参数值包括内存地址偏移量。
[0071]可选地,所述异常关闭的类型还包括:除零错误、内存耗尽、以及调试断点。
[0072]可选地,所述重启信息包括所述浏览器内核的版本信息以及所述浏览器所在的设备信息;所述服务器侧记录的所述浏览器的在先异常关闭信息为,与所述浏览器内核的版本信息以及所述浏览器所在的设备信息相匹配的在先异常关闭信息。
[0073]根据本发明的另一方面,提供了一种浏览器,包括:
[0074]第一上传模块,适于在浏览器异常关闭后重启时,将所述浏览器的重启信息上传至服务器侧;
[0075]第一接收模块,适于接收服务器侧下发的阻止加载指令;所述阻止加载指令为所述服务器侧依据组件的信息生成的指令,所述组件为在相同运行环境下引发同一类型异常关闭的次数超过预设阈值的组件,所述在相同运行环境下引发同一类型异常关闭的次数从所述服务器侧记录的所述浏览器的在先异常关闭信息获得,所述异常关闭信息包括引发异常关闭的组件信息及其运行环境信息;所述在先异常关闭信息由所述服务器侧依据所述重启信息查询获得;
[0076]阻止模块,适于依据所述阻止加载指令阻止加载所述组件。[0077]可选地,所述阻止加载指令为,所述服务器侧在依据所述组件的信息判定所述组件为非关键组件时生成的阻止加载指令。
[0078]可选地,所述浏览器还包括:
[0079]第二接收模块,适于接收服务器侧下发的、在依据所述组件的信息判定所述组件为关键组件时生成的提不版本更新的指令;
[0080]加载显示模块,适于依据所述提示版本更新的指令加载所述组件,并显示所述组件版本更新的提示信息。
[0081 ] 可选地,所述浏览器还包括:
[0082]第三接收模块,适于接收服务器侧下发的、在依据所述组件的信息判定所述组件为不安全组件时生成的黑名单写入指令;
[0083]阻止写入模块,适于依据所述黑名单写入指令阻止加载所述组件,并将所述组件写入浏览器侧的黑名单。
[0084]可选地,所述浏览器还包括:
[0085]第二上传模块,适于在浏览器异常关闭时,将所述浏览器的异常关闭信息上传至服务器侧。
[0086]可选地,所述浏览器还包括:
[0087]弹窗显示模块,适于在第一上传模块将重启信息上传至服务器侧之前,加载弹窗显示是否进入安全模式的提示信息;
[0088]以及在用户确认进入安全模式后,调用所述第一上传模块。
[0089]可选地,所述引发异常关闭的组件信息包括:所述组件的名称、所述组件的版本和所述组件的MD5值;所述引发异常关闭的组件的运行环境信息包括:所述组件运行时的操作系统版本和所述组件运行时的浏览器内核版本。
[0090]可选地,所述重启信息包括所述浏览器内核的版本信息以及所述浏览器所在的设备信息;所述服务器侧记录的所述浏览器的在先异常关闭信息为,与所述浏览器内核的版本信息以及所述浏览器所在的设备信息相匹配的在先异常关闭信息。
[0091]根据本发明的另一方面,提供了一种浏览器异常关闭的处理系统,包括如上所述的服务器、以及如上所述浏览器。
[0092]本发明中,在浏览器异常关闭后重启时,首先读取浏览器侧记录的在先异常关闭信息;然后在依据引发异常关闭的组件信息及其运行环境信息,判定由同一组件在相同运行环境下引发同一类型异常关闭的次数超过预设阈值时,将组件的信息发送至服务器侧;最后接收服务器侧下发的、依据组件的信息生成的阻止加载指令,并依据阻止加载指令阻止加载组件。通过执行上述操作,可以在浏览器重启时阻止加载之前在相同运行环境下引发同一类型异常关闭的次数超过预设阈值的组件,从而在浏览器重启之后不会再由于同样的原因导致再次异常关闭,从根本上解决了浏览器异常关闭的问题。
[0093]上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的【具体实施方式】。
【专利附图】

【附图说明】[0094]通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
[0095]图1示出了根据本发明一个实施例的一种浏览器异常关闭的处理方法实施例1的步骤流程图;
[0096]图2示出了根据本发明一个实施例的一种浏览器异常关闭的处理方法实施例2的步骤流程图;
[0097]图3示出了根据本发明一个实施例的一种浏览器异常关闭的处理方法实施例3的步骤流程图;
[0098]图4示出了服务器侧针对不同原因引起的异常关闭的处理方案示意图;
[0099]图5示出了根据本发明一个实施例的一种浏览器实施例1的结构框图;
[0100]图6示出了根据本发明一个实施例的一种服务器实施例1的结构框图;
[0101]图7示出了根据本发明一个实施例的一种浏览器异常关闭的处理方法实施例4的步骤流程图;
[0102]图8示出了根据本发明一个实施例的一种浏览器异常关闭的处理方法实施例5的步骤流程图;
[0103]图9示出了根据本发明一个实施例的一种浏览器异常关闭的处理方法实施例6的步骤流程图;
[0104]图10示出了根据本发明一个实施例的一种服务器实施例2的结构框图;
[0105]图11示出了根据本发明一个实施例的一种浏览器实施例2的结构框图。
【具体实施方式】
[0106]下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
[0107]参照图1,示出了根据本发明一个实施例的浏览器异常关闭的处理方法实施例1的步骤流程图,具体可以包括以下步骤:
[0108]步骤101,在浏览器异常关闭后重启时,读取所述浏览器侧记录的在先异常关闭信
肩、O
[0109]本发明实施例中,在浏览器侧可以记录异常关闭信息,在浏览器异常关闭后重启时,首先可以读取浏览器侧记录的在先异常关闭信息。其中,浏览器的重启操作可以为通过用户手动重启,也可以为浏览器异常关闭之后自动重启;浏览器侧记录的在先异常关闭信息可以为自浏览器创建起在先记录的所有异常关闭信息,也可以为在先的预设时间段内记录的异常关闭信息,本发明实施例对此并不加以限制。
[0110]步骤102,若依据所述引发异常关闭的组件信息及其运行环境信息,判定由同一组件在相同运行环境下引发同一类型异常关闭的次数超过预设阈值,则将所述组件的信息发送至服务器侧。
[0111]在具体实现中,异常关闭信息可以包括引发异常关闭的组件信息及其运行环境信息。在读取到浏览器侧记录的在先异常关闭信息之后,如果依据在先异常关闭信息中包括的引发异常关闭的组件信息及其运行环境信息,判定由同一组件在相同运行环境下引发同一类型异常关闭的次数超过预设阈值,则可以认为该组件在浏览器重启后仍然可能影响浏览器的运行、导致浏览器异常关闭,此时即可将所述组件的信息发送至服务器侧,由服务器侧针对该组件的信息进行分析,从而得出相应的处理方案。
[0112]步骤103,接收服务器侧下发的、依据所述组件的信息生成的阻止加载指令,依据所述阻止加载指令阻止加载所述组件。
[0113]服务器侧在接收到浏览器侧上传的组件的信息之后,通过对该组件的信息进行分析可以生成阻止加载指令并下发至浏览器侧,则浏览器侧将接收服务器侧下发的、依据所述组件的信息生成的阻止加载指令,之后浏览器侧将依据所述阻止加载指令阻止加载所述组件。
[0114]本发明实施例1可以在浏览器重启时阻止加载之前在相同运行环境下引发同一类型异常关闭的次数超过预设阈值的组件,从而在浏览器重启之后不会再由于同样的原因导致再次异常关闭,从根本上解决了浏览器异常关闭的问题。
[0115]参照图2,示出了根据本发明一个实施例的一种浏览器异常关闭的处理方法实施例2的步骤流程图,具体可以包括如下步骤:
[0116]步骤201,在浏览器异常关闭时,在浏览器侧的外部文件和/或在浏览器侧的注册表中记录异常关闭信息。
[0117]在实际应用中,导致浏览器异常关闭的原因很多,本发明实施例中的浏览器异常关闭可以包括由Flash (Flash是一种动画创作与应用程序开发于一身的创作软件)、第三方安全组件或浏览器内部组件为第三方软件、LSP (Layered Service Provider,分层服务提供程序)、插件、扩展、GPU加速中的任意一个或多个引起的异常关闭。当然,还可以包括由其他原因引起的异常关闭,本发明实施例对此并不加以限制。
[0118]在具体实现中,可以在浏览器侧的外部文件或者在浏览器侧的注册表中记录异常关闭信息,还可以在浏览器侧的外部文件和浏览器侧的注册表中均记录异常关闭信息,当然还可以在浏览器侧的其他位置记录异常关闭信息,本发明实施例对此并不加以限制。
[0119]其中,异常关闭信息可以包括引发异常关闭的组件信息及其运行环境信息。所述引发异常关闭的组件信息可以包括:所述组件的名称、所述组件的版本和所述组件的MD5值;所述引发异常关闭的组件的运行环境信息可以包括:所述组件运行时的操作系统版本和所述组件运行时的浏览器内核版本。其中,操作系统版本可以为windoWS95、windows2000> windows ME、windows XP> windows2003> windows vista、windows7> Linux、Unix,等等;浏览器内核版本可以为IE7、IE8等等。
[0120]需要说明的是,所述异常关闭信息还可以包括,异常关闭的类型以及异常参数值,其中,异常关闭的类型可以包括访问违例EXCEPT10N_ACCESS_V10LAT10N、除零错误、内存耗尽、以及调试断点,等等。在异常关闭的类型为访问违例时,异常参数值可以包括内存地址偏移量。访问违例是指在加载某个组件时发生了内存地址的偏移,即调入至内存中的代码组件在内存地址上发生偏移。浏览器程序中有很多组件,如调用一个插件时,首先需要将其读入内存,即用CPU (Central Processing Unit,中央处理器)去调入内存,而在调入内存时出现异常,如溢出,则会表现在内存地址上的偏移。[0121]例如,一种异常关闭信息可以包括:引发异常关闭的组件的名称为极品五笔、版本为4.0.0.950、MD5值为x,该组件运行时的操作系统版本为windows XP,浏览器内核版本为IE7,该异常关闭的类型为EXCEPT10N_ACCESS_V10LAT10N,异常参数值(B卩内存地址偏移量)为20。
[0122]步骤202,在浏览器异常关闭后重启时,加载弹窗显示是否进入安全模式的提示信
肩、O
[0123]安全模式是Windows操作系统中的一种特殊模式,在安全模式下可以轻松地修复系统的一些错误,起到事半功倍的效果。安全模式的工作原理是在不加载第三方设备驱动程序的情况下启动电脑,使电脑运行在系统最小模式,这样就可以方便地检测与修复计算机系统的错误,使得可能导致操作系统异常的组件不会被加载启动。
[0124]本发明实施例将Windows操作系统的安全模式应用于浏览器中,在浏览器异常关闭后重启时对于某些可能导致浏览器异常关闭的组件阻止其加载启动,从而避免浏览器再次异常关闭。
[0125]作为本发明具体应用的一种优选示例,在浏览器异常关闭后重启时,可以加载弹窗显示是否进入安全模式的提示信息,弹窗中可以设置“是”和“否”两个按钮以供用户选择。当用户选择确认进入安全模式(即点击“是”)之后,即可以执行后续的步骤203 ;如果用户没有选择进入安全模式(即点击“否”),则不执行后续步骤,按照传统的方式重启浏览器。
[0126]当然,本发明实施例中还可以采用其它方式显示上述提示信息,并且还可以不显示上述提示信息,即在浏览器异常关闭后重启时,浏览器自动进入安全模式,并执行步骤203。
[0127]步骤203,读取所述浏览器侧记录的在先异常关闭信息。
[0128]在步骤201中描述了在浏览器异常关闭时,在浏览器侧的外部文件和/或在浏览器侧的注册表中记录异常关闭信息。如果只在浏览器侧的外部文件中记录了异常关闭信息,则该步骤203中从上述外部文件中读取在先异常关闭信息;如果只在浏览器侧的注册表中记录了异常关闭信息,则该步骤203中从上述注册表中读取在先异常关闭信息;如果在浏览器侧的外部文件和浏览器侧的注册表中均记录了异常关闭信息,则该步骤203中可以从上述外部文件和注册表中的任意一个读取在先异常关闭信息。
[0129]其中,浏览器侧记录的在先异常关闭信息可以为自浏览器创建起在先记录的所有异常关闭信息,也可以为在先的预设时间段内记录的异常关闭信息,本发明实施例对此并不加以限制。
[0130]步骤204,若依据所述引发异常关闭的组件信息及其运行环境信息,判定由同一组件在相同运行环境下引发同一类型异常关闭的次数超过预设阈值,则将所述组件的信息发送至服务器侧。
[0131]读取所述浏览器侧记录的在先异常关闭信息之后,对这些异常关闭信息进行分析,如果依据所述引发异常关闭的组件信息及其运行环境信息,判定由同一组件在相同运行环境下引发同一类型异常关闭的次数超过预设阈值(例如3次),则该组件为可能导致浏览器异常关闭的组件,因此浏览器要将该组件的信息发送至服务器侧,然后可以由服务器侧判定对该组件进行何种处理。
[0132]例如,如果依据在先异常关闭信息中引发异常关闭的组件信息及其运行环境信息,判定异常关闭信息为“引发异常关闭的组件的名称为极品五笔、版本为4.0.0.950、MD5值为X,该组件运行时的操作系统版本为windows XP,浏览器内核版本为IE7”的这一异常关闭的次数超过预设阈值,则将组件的信息“组件名称为极品五笔、版本为4.0.0.950、MD5值为X”发送至服务器侧。
[0133]当然,如果异常关闭信息中还包括异常关闭的类型以及异常参数值,则要依据在先异常关闭信息中引发异常关闭的组件信息及其运行环境信息、异常关闭的类型以及异常参数值进行判定。例如判定异常关闭信息为“引发异常关闭的组件的名称为极品五笔、版本为4.0.0.950、MD5值为x,该组件运行时的操作系统版本为windows XP,浏览器内核版本为IE7,该异常关闭的类型为EXCEPT10N_ACCESS_V10LAT10N,异常参数值(内存地址偏移量)为20”的这一异常关闭的次数超过预设阈值,则将组件的信息“组件名称为极品五笔、版本为
4.0.0.950、MD5值为x”发送至服务器侧。
[0134]步骤205,接收服务器侧下发的、依据所述组件的信息生成的阻止加载指令,依据所述阻止加载指令阻止加载所述组件。
[0135]服务器侧在接收到浏览器侧发送的组件的信息之后,可以针对该组件的信息进行分析,并依据所述组件的信息生成相应的指令下发至浏览器侧。对于服务器侧的分析、生成指令的具体过程将在下面从服务器侧描述的实施例中进行介绍,本发明实施例在此不再详细论述。
[0136]如果服务器侧依据所述组件的信息(B卩“组件名称为极品五笔、版本为4.0.0.950、MD5值为X”)判定所述组件为非关键组件,则将生成阻止加载指令并下发至浏览器侧,即所述阻止加载指令为,所述服务器侧在依据所述组件的信息判定所述组件为非关键组件时生成的阻止加载指令。浏览器侧在接收到上述阻止加载指令之后,即可依据该阻止加载指令阻止加载所述组件,即阻止加载上述名称为极品五笔、版本为4.0.0.950、MD5值为x的组件。
[0137]步骤206,接收服务器侧下发的、在依据所述组件的信息判定所述组件为关键组件时生成的提示版本更新的指令,依据所述提示版本更新的指令加载所述组件,并显示所述组件版本更新的提示信息。
[0138]如果服务器侧依据所述组件的信息(B卩“组件名称为极品五笔、版本为4.0.0.950、MD5值为X”)判定所述组件为关键组件,则将生成提示版本更新的指令并下发至浏览器侧,即浏览器侧将接收服务器侧下发的、在依据所述组件的信息判定所述组件为关键组件时生成的提示版本更新的指令。浏览器侧在接收到上述提示版本更新的指令之后,即可依据该提示版本更新的指令加载所述组件,即加载上述名称为极品五笔、版本为4.0.0.950、MD5值为X的组件,并显示所述组件版本更新的提示信息,用户可以根据该提示信息更新所述组件的版本。
[0139]在具体实现中,所述组件版本更新的提示信息可以为提示用户升级所述组件版本的信息,或者,提示用户将所述组件的版本更改为稳定版本的信息;可以在浏览器中以黄色提示条的方式显示提示信息,或者,在浏览器中以提示消息框的方式显示提示信息。本发明实施例对此并不加以限制。
[0140]步骤207,接收服务器侧下发的、在依据所述组件的信息判定所述组件为不安全组件时生成的黑名单写入指令,依据所述黑名单写入指令阻止加载所述组件,并将所述组件写入浏览器侧的黑名单。
[0141]如果服务器侧依据所述组件的信息(B卩“组件名称为极品五笔、版本为4.0.0.950、MD5值为X”)判定所述组件为不安全组件,则将生成黑名单写入指令并下发至浏览器侧,即浏览器侧将接收服务器侧下发的、在依据所述组件的信息判定所述组件为不安全组件时生成的黑名单写入指令。浏览器侧在接收到上述黑名单写入指令之后,即可依据该黑名单写入指令阻止加载所述组件,即阻止加载上述名称为极品五笔、版本为4.0.0.950、MD5值为x的组件,并将该组件写入浏览器侧的黑名单。
[0142]需要说明的是,步骤205、步骤206和步骤207并不表示按照上述顺序执行,实际上该3个步骤为并列执行的步骤。
[0143]本发明实施例2中在浏览器异常关闭后重启时,可以显示提示信息,用户可以选择是否进入安全模式,当确认进入安全模式之后可以执行后续的处理过程。并且服务器侧可以依据不同的组件的信息生成不同的指令,浏览器侧则依据服务器侧下发的不同指令执行对应的操作即可,从而在浏览器重启之后不会再由于同样的原因导致再次异常关闭,从根本上解决了浏览器异常关闭的问题。
[0144]上述实施例1和实施例2是从浏览器侧针对浏览器异常关闭的处理方法进行的描述,下面通过实施例3从服务器侧进行描述。
[0145]参照图3,示出了根据本发明一个实施例的一种浏览器异常关闭的处理方法实施例3的步骤流程图,具体可以包括以下步骤:
[0146]步骤301,接收浏览器侧上传的组件的信息。
[0147]其中,所述组件为在相同运行环境下引发同一类型异常关闭的次数超过预设阈值的某一组件,所述在相同运行环境下引发同一类型异常关闭的次数从所述浏览器侧记录的在先异常关闭信息获得,所述异常关闭信息包括引发异常关闭的组件信息及其运行环境信息;所述在先异常关闭信息在所述浏览器异常关闭后重启时读取。
[0148]步骤302,依据所述组件的信息生成阻止加载指令。
[0149]服务器侧在接收到浏览器侧发送的组件的信息之后,可以针对该组件的信息进行分析,并依据所述组件的信息生成相应的指令下发至浏览器侧。
[0150]在本发明的一种优选实施例中,步骤302具体可以包括如下子步骤:
[0151]子步骤S21,依据所述组件的信息判定所述组件是否为非关键组件;若是,则生成阻止加载指令。
[0152]如果服务器侧判定所述组件为非关键组件,则说明浏览器侧可以阻止加载该组件,此时服务器侧将生成阻止加载指令。
[0153]在具体实现中,可以预先在服务器侧配置不稳定组件名单,该不稳定组件名单可以依据组件是否关键进行配置,此处对于具体的配置过程不再详述。该不稳定组件名单中可以包括组件的名称、组件的版本、组件的MD5值等信息。在本发明的一种优选实施例中,上述子步骤S21的判定过程可以为:查找预先配置的不稳定组件名单中是否存在所述组件的信息(即接收到的浏览器侧上传的组件的信息);若存在,则确定所述组件为非关键组件;若不存在,则确定所述组件为关键组件。
[0154]步骤303,将所述阻止加载指令下发至浏览器侧,所述浏览器侧用于依据所述阻止加载指令阻止加载所述组件。[0155]在本发明的一种优选实施例中,所述浏览器异常关闭的处理方法还可以包括以下步骤:
[0156]步骤304,在依据所述组件的信息判定所述组件为关键组件时,生成提示版本更新的指令。
[0157]如果服务器侧判定所述组件为关键组件(即利用上述子步骤S21的判定过程判定所述组件为关键组件),则说明浏览器侧不能阻止加载该组件,此时服务器侧将生成提示版本更新的指令。
[0158]步骤305,将所述提示版本更新的指令下发至浏览器侧,所述浏览器侧还用于依据所述提示版本更新的指令加载所述组件,并显示所述组件版本更新的提示信息。
[0159]步骤306,在依据所述组件的信息判定所述组件为不安全组件时,生成黑名单写入指令。
[0160]如果服务器侧判定所述组件为不安全组件,则说明浏览器侧可以阻止加载该组件,并且该组件是不安全的,此时服务器侧将生成黑名单写入指令。
[0161 ] 在具体实现中,可以预先在服务器侧配置不安全组件名单,该不安全组件名单可以依据组件是否存在木马、病毒等情况进行配置,此处对于具体的配置过程不再详述。该不稳定组件名单中也可以包括组件的名称、组件的版本、组件的MD5值等信息。在本发明的一种优选实施例中,上述对不安全组件的判定过程可以为:查找预先配置的不安全组件名单中是否存在所述组件的信息(即接收到的浏览器侧上传的组件的信息);若存在,则确定所述组件为不安全组件;若不存在,则确定所述组件为安全组件。
[0162]步骤307,将所述黑名单写入指令下发至浏览器侧,所述浏览器侧还用于依据所述黑名单写入指令阻止加载所述组件,并将所述组件写入浏览器侧的黑名单。
[0163]需要说明的是,步骤302、步骤304和步骤306并不表示按照上述顺序执行,实际上该3个步骤为并列执行的步骤。
[0164]在本发明的一种优选实施例中,在服务器侧依据所述组件的信息判定所述组件为不安全组件时,还可以将该组件写入服务器侧的黑名单,此时服务器侧可以不执行上述步骤306和步骤307,只需通知浏览器侧该组件为不安全组件即可,浏览器侧还用于阻止加载该组件。当然,在这种情况下,服务器侧仍然可以执行上述步骤306和步骤307,本发明实施例对此并不加以限制。
[0165]在实际应用中,导致浏览器异常关闭的原因很多,本发明实施例中的浏览器异常关闭可以包括由Flash、第三方安全组件或浏览器内部组件为第三方软件、LSP、插件、扩展、GPU加速中的任意一个或多个引起的异常关闭。
[0166]图4为服务器侧针对不同原因引起的异常关闭的处理方案示意图。首先进入安全模式,当由Flash引起异常关闭时,服务器侧生成提示版本更新的指令(Flash稳定版本更新);当由第三方安全组件或浏览器内部组件为第三方软件引起异常关闭时,服务器侧生成阻止加载指令(第三方安全软件防注入);当由LSP引起异常关闭时,服务器侧生成阻止加载指令(LSP防注入);当由插件引起异常关闭时,服务器侧生成黑名单写入指令或者将所述组件写入服务器侧的黑名单(插件黑名单);当由扩展引起异常关闭时,服务器侧生成黑名单写入指令或者将所述组件写入服务器侧的黑名单(扩展黑名单);当由GPU加速引起异常关闭时,服务器侧生成阻止加载指令(GPU加速禁用)。[0167]上述实施例1和实施例2是从浏览器侧进行描述,实施例3是从服务器侧进行描述。下面,从整体对浏览器异常关闭的处理方法进行描述,该方法具体可以包括以下步骤:
[0168]步骤a,浏览器侧在异常关闭时,在浏览器侧的外部文件和/或在浏览器侧的注册表中记录异常关闭信息;
[0169]步骤b,浏览器侧在异常关闭后重启时,加载弹窗显示是否进入安全模式的提示信息;
[0170]当用户确认进入安全模式时,执行步骤C。
[0171]步骤C,浏览器侧读取所述浏览器侧记录的在先异常关闭信息;
[0172]步骤d,浏览器侧若依据所述引发异常关闭的组件信息及其运行环境信息,判定由同一组件在相同运行环境下引发同一类型异常关闭的次数超过预设阈值,则将所述组件的信息发送至服务器侧;
[0173]步骤e,服务器侧接收浏览器侧上传的组件的信息;
[0174]步骤f,服务器侧依据所述组件的信息生成阻止加载指令,并将所述阻止加载指令下发至浏览器侧;
[0175]步骤g,浏览器侧接收服务器侧下发的、依据所述组件的信息生成的阻止加载指令,依据所述阻止加载指令阻止加载所述组件;
[0176]步骤h,服务器侧在依据所述组件的信息判定所述组件为关键组件时,生成提示版本更新的指令,并将所述提示版本更新的指令下发至浏览器侧;
[0177]步骤i,浏览器侧接收服务器侧下发的、在依据所述组件的信息判定所述组件为关键组件时生成的提示版本更新的指令,依据所述提示版本更新的指令加载所述组件,并显示所述组件版本更新的提示信息;
[0178]步骤j,服务器侧在依据所述组件的信息判定所述组件为不安全组件时,生成黑名单写入指令,并将所述黑名单写入指令下发至浏览器侧;
[0179]在本发明的一种优选实施例中,当服务器侧依据所述组件的信息判定所述组件为不安全组件时,还可以将该组件写入服务器侧的黑名单,此时服务器侧可以不将所述黑名单写入指令下发至浏览器侧,只需通知浏览器侧该组件为不安全组件即可,浏览器侧还用于阻止加载该组件。当然,在这种情况下,服务器侧仍然可以将所述黑名单写入指令下发至浏览器侧,本发明实施例对此并不加以限制。
[0180]步骤k,浏览器侧接收服务器侧下发的、在依据所述组件的信息判定所述组件为不安全组件时生成的黑名单写入指令,依据所述黑名单写入指令阻止加载所述组件,并将所述组件写入浏览器侧的黑名单。
[0181]对于前述各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明实施例并不受所描述的动作顺序的限制,因为依据本发明实施例,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作并不一定是本发明实施例所必须的。
[0182]参照图5,示出了根据本发明一个实施例的一种浏览器实施例1的结构框图,所述浏览器与服务器通信,所述浏览器可以包括如下模块:
[0183]记录模块501,适于在浏览器异常关闭时,在浏览器侧的外部文件和/或在浏览器侧的注册表中记录异常关闭信息;
[0184]弹窗显示模块502,适于在所述读取模块读取所述浏览器侧记录的在先异常关闭信息之前,加载弹窗显示是否进入安全模式的提示信息;
[0185]以及在用户确认进入安全模式后,调用所述读取模块。
[0186]读取模块503,适于在浏览器异常关闭后重启时,读取所述浏览器侧记录的在先异常关闭信息;所述异常关闭信息包括引发异常关闭的组件信息及其运行环境信息;
[0187]发送模块504,适于在依据所述引发异常关闭的组件信息及其运行环境信息,判定由同一组件在相同运行环境下引发同一类型异常关闭的次数超过预设阈值时,将所述组件的信息发送至服务器侧;
[0188]第一接收模块505,适于接收服务器侧下发的、依据所述组件的信息生成的阻止加载指令;
[0189]在本发明的一种优选实施例中,所述阻止加载指令为,所述服务器侧在依据所述组件的信息判定所述组件为非关键组件时生成的阻止加载指令。
[0190]阻止模块506,适于依据所述阻止加载指令阻止加载所述组件。
[0191]第二接收模块507,适于接收服务器侧下发的、在依据所述组件的信息判定所述组件为关键组件时生成的提示版本更新的指令;
[0192]加载显示模块508,适于依据所述提示版本更新的指令加载所述组件,并显示所述组件版本更新的提示信息。
[0193]第三接收模块509,适于接收服务器侧下发的、在依据所述组件的信息判定所述组件为不安全组件时生成的黑名单写入指令;
[0194]阻止写入模块510,适于依据所述黑名单写入指令阻止加载所述组件,并将所述组件写入浏览器侧的黑名单。
[0195]在本发明的一种优选实施例中,所述浏览器异常关闭包括由Flash、第三方安全组件或浏览器内部组件为第三方软件、分层服务提供程序LSP、插件、扩展、图形处理器GPU加速中的任意一个或多个引起的异常关闭。
[0196]所述引发异常关闭的组件信息包括:所述组件的名称、所述组件的版本和所述组件的MD5值;所述引发异常关闭的组件的运行环境信息包括:所述组件运行时的操作系统版本和所述组件运行时的浏览器内核版本。在本发明的一种优选实施例中,所述异常关闭信息还包括,异常关闭的类型以及异常参数值,所述异常关闭的类型包括访问违例EXCEPT10N_ACCESS_V10LAT10N、除零错误、内存耗尽、以及调试断点。当异常关闭的类型为访问违例时,所述异常参数值包括内存地址偏移量。
[0197]对于上述浏览器实施例1而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见图1、图2和图3所示方法实施例的部分说明即可。
[0198]参照图6,示出了根据本发明一个实施例的一种服务器实施例1的结构框图,所述服务器与浏览器通信,所述服务器可以包括如下模块:
[0199]接收模块601,适于接收浏览器侧上传的组件的信息;
[0200]第一生成模块602,适于依据所述组件的信息生成阻止加载指令;
[0201]第一下发模块603,适于将所述阻止加载指令下发至浏览器侧,所述浏览器侧用于依据所述阻止加载指令阻止加载所述组件;[0202]第二生成模块604,适于在依据所述组件的信息判定所述组件为关键组件时,生成提示版本更新的指令;
[0203]第二下发模块605,适于将所述提示版本更新的指令下发至浏览器侧,所述浏览器侧还用于依据所述提示版本更新的指令加载所述组件,并显示所述组件版本更新的提示信息;
[0204]第三生成模块606,适于在依据所述组件的信息判定所述组件为不安全组件时,生成黑名单写入指令;
[0205]第三下发模块607,适于将所述黑名单写入指令下发至浏览器侧,所述浏览器侧还用于依据所述黑名单写入指令阻止加载所述组件,并将所述组件写入浏览器侧的黑名单;
[0206]写入模块608,适于在依据所述组件的信息判定所述组件为不安全组件时,将所述组件写入服务器侧的黑名单,所述浏览器侧还用于阻止加载所述组件。
[0207]在本发明的一种优选实施例中,所述组件为在相同运行环境下引发同一类型异常关闭的次数超过预设阈值的某一组件,所述在相同运行环境下引发同一类型异常关闭的次数从所述浏览器侧记录的在先异常关闭信息获得,所述异常关闭信息包括引发异常关闭的组件信息及其运行环境信息;所述在先异常关闭信息在所述浏览器异常关闭后重启时读取。
[0208]在本发明的一种优选实施例中,所述第一生成模块还适于:依据所述组件的信息判定所述组件是否为非关键组件;若是,则生成阻止加载指令。所述第一生成模块还适于:查找预先配置的不稳定组件名单中是否存在所述组件的信息;若存在,则确定所述组件为非关键组件;若不存在,则确定所述组件为关键组件。
[0209]对于上述服务器实施例1而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见图1、图2和图3所示方法实施例的部分说明即可。
[0210]本发明还提供了一种浏览器异常关闭的处理系统,具体可以包括浏览器和服务器,其中,对于浏览器的描述参照上述图5所示的实施例1的部分说明即可;对于服务器的描述参照上述图6所示的服务器实施例1的部分说明即可。
[0211]本发明中,在浏览器异常关闭后重启时,首先读取浏览器侧记录的在先异常关闭信息;然后在依据引发异常关闭的组件信息及其运行环境信息,判定由同一组件在相同运行环境下引发同一类型异常关闭的次数超过预设阈值时,将组件的信息发送至服务器侧;最后接收服务器侧下发的、依据组件的信息生成的阻止加载指令,并依据阻止加载指令阻止加载组件。本发明可以在浏览器重启时阻止加载之前在相同运行环境下引发同一类型异常关闭的次数超过预设阈值的组件,从而在浏览器重启之后不会再由于同样的原因导致再次异常关闭,从根本上解决了浏览器异常关闭的问题。
[0212]上述各个实施例中,在先异常关闭信息记录在浏览器侧,对于异常关闭次数的判断由浏览器执行。本发明中在先异常关闭信息也可以记录在服务器侧,对于异常关闭次数的判断也可以由服务器执行,下面,通过以下各个实施例对在先异常关闭信息记录在服务器侧的情况进行描述。
[0213]参照图7,示出了根据本发明一个实施例的浏览器异常关闭的处理方法实施例4的步骤流程图,具体可以包括以下步骤:
[0214]步骤701,接收浏览器侧在异常关闭后重启时上传的所述浏览器的重启信息,依据所述重启信息查询服务器侧记录的所述浏览器的在先异常关闭信息。
[0215]本发明实施例中,浏览器侧在异常关闭后重启时,可以将所述浏览器的重启信息上传至服务器侧,服务器侧接收浏览器侧上传的所述浏览器的重启信息,然后可以依据所述重启信息查询服务器侧记录的所述浏览器的在先异常关闭信息。
[0216]其中,其中,浏览器的重启操作可以为通过用户手动重启,也可以为浏览器异常关闭之后自动重启;服务器侧记录的在先异常关闭信息可以为自服务器创建起在先记录的所有异常关闭信息,也可以为在先的预设时间段内记录的异常关闭信息,本发明实施例对此并不加以限制。
[0217]步骤702,若服务器侧依据所述引发异常关闭的组件信息及其运行环境信息,判定由同一组件在相同运行环境下引发同一类型异常关闭的次数超过预设阈值,则依据所述组件的信息生成阻止加载指令。
[0218]在具体实现中,异常关闭信息可以包括引发异常关闭的组件信息及其运行环境信息。在依据所述重启信息查询到服务器侧记录的在先异常关闭信息之后,如果依据在先异常关闭信息中包括的引发异常关闭的组件信息及其运行环境信息,判定由同一组件在相同运行环境下引发同一类型异常关闭的次数超过预设阈值,则可以认为该组件在浏览器重启后仍然可能影响浏览器的运行、导致浏览器异常关闭,此时即可对所述组件的信息进行分析,并依据所述组件的信息生成阻止加载指令。
[0219]步骤703,将所述阻止加载指令下发至浏览器侧,所述浏览器侧用于依据所述阻止加载指令阻止加载所述组件。
[0220]本发明实施例4可以在浏览器重启时阻止加载之前在相同运行环境下引发同一类型异常关闭的次数超过预设阈值的组件,从而在浏览器重启之后不会再由于同样的原因导致再次异常关闭,从根本上解决了浏览器异常关闭的问题。
[0221]参照图8,示出了根据本发明一个实施例的浏览器异常关闭的处理方法实施例5的步骤流程图,具体可以包括以下步骤:
[0222]步骤801,接收并记录浏览器侧在异常关闭时上传的所述浏览器的异常关闭信息。
[0223]在实际应用中,导致浏览器异常关闭的原因很多,本发明实施例中的浏览器异常关闭可以包括由Flash (Flash是一种动画创作与应用程序开发于一身的创作软件)、第三方安全组件或浏览器内部组件为第三方软件、LSP (Layered Service Provider,分层服务提供程序)、插件、扩展、GPU加速中的任意一个或多个引起的异常关闭。当然,还可以包括由其他原因引起的异常关闭,本发明实施例对此并不加以限制。
[0224]在浏览器侧异常关闭时,可以将异常关闭信息上传到服务器侧,服务器侧接收到所述异常关闭信息之后,可以进行记录整理,以供后续查询使用。例如,可以在服务器侧的外部文件或者在服务器侧的注册表中记录异常关闭信息,还可以在服务器侧的外部文件和服务器侧的注册表中均记录异常关闭信息,当然还可以在服务器侧的其他位置记录异常关闭信息,本发明实施例对此并不加以限制。
[0225]其中,异常关闭信息可以包括引发异常关闭的组件信息及其运行环境信息。所述引发异常关闭的组件信息可以包括:所述组件的名称、所述组件的版本和所述组件的MD5值;所述引发异常关闭的组件的运行环境信息可以包括:所述组件运行时的操作系统版本和所述组件运行时的浏览器内核版本。其中,操作系统版本可以为windoWS95、windows2000> windows ME、windows XP> windows2003> windows vista、windows7> Linux、Unix,等等;浏览器内核版本可以为IE7、IE8等等。
[0226]需要说明的是,所述异常关闭信息还可以包括,异常关闭的类型以及异常参数值,其中,异常关闭的类型可以包括访问违例EXCEPT10N_ACCESS_V10LAT10N、除零错误、内存耗尽、以及调试断点,等等。当异常关闭的类型为访问违例时,异常参数值可以包括内存地址偏移量。访问违例是指在加载某个组件时发生了内存地址的偏移,即调入至内存中的代码组件在内存地址上发生偏移。浏览器程序中有很多组件,如调用一个插件时,首先需要将其读入内存,即用CPU (Central Processing Unit,中央处理器)去调入内存,而在调入内存时出现异常,如溢出,则会表现在内存地址上的偏移。
[0227]例如,一种异常关闭信息可以包括:引发异常关闭的组件的名称为极品五笔、版本为4.0.0.950、MD5值为x,该组件运行时的操作系统版本为windows XP,浏览器内核版本为IE7,该异常关闭的类型为EXCEPT10N_ACCESS_V10LAT10N,异常参数值(B卩内存地址偏移量)为20。
[0228]步骤802,接收浏览器侧在异常关闭后重启时上传的所述浏览器的重启信息,依据所述重启信息查询服务器侧记录的所述浏览器的在先异常关闭信息。
[0229]浏览器侧在异常关闭后重启时,可以上传所述浏览器的重启信息至浏览器侧。月艮务器侧可以接收浏览器侧上传的所述浏览器的重启信息,并依据所述重启信息查询服务器侧记录的所述浏览器的在先异常关闭信息。
[0230]在步骤801中描述了可以在服务器侧的外部文件或者在服务器侧的注册表中记录异常关闭信息,还可以在服务器侧的外部文件和服务器侧的注册表中均记录异常关闭信息。如果只在服务器侧的外部文件中记录了异常关闭信息,则该步骤802中从上述外部文件中读取在先异常关闭信息;如果只在服务器侧的注册表中记录了异常关闭信息,则该步骤802中从上述注册表中读取在先异常关闭信息;如果在服务器侧的外部文件和浏览器侧的注册表中均记录了异常关闭信息,则该步骤802中可以从上述外部文件和注册表中的任意一个读取在先异常关闭信息。
[0231]在一种具体实现中,所述重启信息可以包括所述浏览器内核的版本信息(例如IE7、IE8等)以及所述浏览器所在的设备信息(例如设备ID等),服务器侧在记录浏览器侧上传的异常关闭信息时,可以将浏览器内核的版本信息以及浏览器所在的设备信息,与异常关闭信息相匹配记录。因此,依据所述重启信息查询的所述服务器侧记录的所述浏览器的在先异常关闭信息为,与所述浏览器内核的版本信息以及所述浏览器所在的设备信息相匹配的在先异常关闭信息。
[0232]步骤803,若服务器侧依据所述引发异常关闭的组件信息及其运行环境信息,判定由同一组件在相同运行环境下引发同一类型异常关闭的次数超过预设阈值,则依据所述组件的信息生成阻止加载指令,并将所述阻止加载指令下发至浏览器侧,所述浏览器侧用于依据所述阻止加载指令阻止加载所述组件。
[0233]服务器侧在查询到服务器侧记录的所述浏览器的在先异常关闭信息之后,对这些异常关闭信息进行分析,如果依据所述引发异常关闭的组件信息及其运行环境信息,判定由同一组件在相同运行环境下引发同一类型异常关闭的次数超过预设阈值,则该组件为可能导致浏览器异常关闭的组件,因此则服务器侧可以依据所述组件的信息生成阻止加载指令,并将所述阻止加载指令下发至浏览器侧,所述浏览器侧用于依据所述阻止加载指令阻止加载所述组件。
[0234]在本发明的一种优选实施例中,步骤803具体可以包括如下子步骤:
[0235]子步骤S31,依据所述组件的信息判定所述组件是否为非关键组件;若是,则生成阻止加载指令。
[0236]如果服务器侧判定所述组件为非关键组件,则说明浏览器侧可以阻止加载该组件,此时服务器侧将生成阻止加载指令。
[0237]在具体实现中,可以预先在服务器侧配置不稳定组件名单,该不稳定组件名单可以依据组件是否关键进行配置,此处对于具体的配置过程不再详述。该不稳定组件名单中可以包括组件的名称、组件的版本、组件的MD5值等信息。在本发明的一种优选实施例中,上述子步骤S31的判定过程可以为:查找预先配置的不稳定组件名单中是否存在所述组件的信息;若存在,则确定所述组件为非关键组件;若不存在,则确定所述组件为关键组件。
[0238]例如,如果依据在先异常关闭信息中引发异常关闭的组件信息及其运行环境信息,判定异常关闭信息为“引发异常关闭的组件的名称为极品五笔、版本为4.0.0.950、MD5值为X,该组件运行时的操作系统版本为windows XP,浏览器内核版本为IE7”的这一异常关闭的次数超过预设阈值,并且依据所述组件的信息判定所述组件为非关键组件,则可以依据该组件的信息“组件名称为极品五笔、版本为4.0.0.950、MD5值为x”生成阻止加载指令。
[0239]当然,如果异常关闭信息中还包括异常关闭的类型以及异常参数值,则要依据在先异常关闭信息中引发异常关闭的组件信息及其运行环境信息、异常关闭的类型以及异常参数值进行判定。例如判定异常关闭信息为“引发异常关闭的组件的名称为极品五笔、版本为4.0.0.950、MD5值为x,该组件运行时的操作系统版本为windows XP,浏览器内核版本为IE7,该异常关闭的类型为EXCEPT10N_ACCESS_V10LAT10N,异常参数值(内存地址偏移量)为20”的这一异常关闭的次数超过预设阈值,并且依据所述组件的信息判定所述组件为非关键组件,则可以依据该组件的信息生成阻止加载指令。
[0240]浏览器侧在接收到上述阻止加载指令之后,即可依据该阻止加载指令阻止加载所述组件,即阻止加载上述名称为极品五笔、版本为4.0.0.950、MD5值为x的组件。
[0241]步骤804,在依据所述组件的信息判定所述组件为关键组件时,生成提示版本更新的指令。
[0242]如果服务器侧判定所述组件为关键组件(即利用上述子步骤S31的判定过程判定所述组件为关键组件),例如依据所述组件的信息“组件名称为极品五笔、版本为
4.0.0.950、MD5值为x”判定所述组件为关键组件,则说明浏览器侧不能阻止加载该组件,此时服务器侧将生成提示版本更新的指令。
[0243]步骤805,将所述提示版本更新的指令下发至浏览器侧,所述浏览器侧还用于依据所述提示版本更新的指令加载所述组件,并显示所述组件版本更新的提示信息。
[0244]服务器侧将生成的提示版本更新的指令下发至浏览器侧,浏览器侧即可依据该提示版本更新的指令加载所述组件,即加载上述名称为极品五笔、版本为4.0.0.950、MD5值为X的组件,并显示所述组件版本更新的提示信息,用户可以根据该提示信息更新所述组件的版本。[0245]步骤806,在依据所述组件的信息判定所述组件为不安全组件时,生成黑名单写入指令。
[0246]如果服务器侧判定所述组件为不安全组件,例如依据所述组件的信息“组件名称为极品五笔、版本为4.0.0.950、MD5值为x”判定所述组件为不安全组件,则说明浏览器侧可以阻止加载该组件,并且该组件是不安全的,此时服务器侧将生成黑名单写入指令。
[0247]在具体实现中,可以预先在服务器侧配置不安全组件名单,该不安全组件名单可以依据组件是否存在木马、病毒等情况进行配置,此处对于具体的配置过程不再详述。该不稳定组件名单中也可以包括组件的名称、组件的版本、组件的MD5值等信息。在本发明的一种优选实施例中,上述对不安全组件的判定过程可以为:查找预先配置的不安全组件名单中是否存在所述组件的信息;若存在,则确定所述组件为不安全组件;若不存在,则确定所述组件为安全组件。
[0248]步骤807,将所述黑名单写入指令下发至浏览器侧,所述浏览器侧还用于依据所述黑名单写入指令阻止加载所述组件,并将所述组件写入浏览器侧的黑名单。
[0249]服务器侧将所述黑名单写入指令下发至浏览器侧,浏览器侧即可依据该黑名单写入指令阻止加载所述组件,即阻止加载上述名称为极品五笔、版本为4.0.0.950、MD5值为x的组件,并将该组件写入浏览器侧的黑名单。
[0250]需要说明的是,步骤803、步骤804和步骤806并不表示按照上述顺序执行,实际上该3个步骤为并列执行的步骤。
[0251]在本发明的一种优选实施例中,在服务器侧依据所述组件的信息判定所述组件为不安全组件时,还可以将该组件写入服务器侧的黑名单,此时服务器侧可以不执行上述步骤806和步骤807,只需通知浏览器侧该组件为不安全组件即可,浏览器侧还用于阻止加载该组件。当然,在这种情况下,服务器侧仍然可以执行上述步骤806和步骤807,本发明实施例对此并不加以限制。
[0252]上述实施例4和实施例5是从服务器侧针浏览器异常关闭的处理方法进行的描述,下面通过实施例6从浏览器侧进行描述。
[0253]参照图9,示出了根据本发明一个实施例的一种浏览器异常关闭的处理方法实施例6的步骤流程图,具体可以包括以下步骤:
[0254]步骤901,在浏览器异常关闭时,将所述浏览器的异常关闭信息上传至服务器侧。
[0255]其中,所述异常关闭信息可以包括引发异常关闭的组件信息及其运行环境信息。
[0256]步骤902,在浏览器异常关闭后重启时,加载弹窗显示是否进入安全模式的提示信
肩、O
[0257]在本发明实施例中,在浏览器异常关闭后重启时,可以加载弹窗显示是否进入安全模式的提示信息,弹窗中可以设置“是”和“否”两个按钮以供用户选择。当用户选择确认进入安全模式(即点击“是”)之后,即可以执行后续的步骤903 ;如果用户没有选择进入安全模式(即点击“否”),则不执行后续步骤,按照传统的方式重启浏览器。
[0258]当然,本发明实施例中还可以采用其它方式显示上述提示信息,并且还可以不显示上述提示信息,即在浏览器异常关闭后重启时,浏览器自动进入安全模式,并执行步骤903。
[0259]步骤903,将所述浏览器的重启信息上传至服务器侧。[0260]其中,所述重启信息可以包括所述浏览器内核的版本信息以及所述浏览器所在的设备信息。
[0261]步骤904,接收服务器侧下发的阻止加载指令。
[0262]所述阻止加载指令为所述服务器侧依据组件的信息生成的指令,所述组件为在相同运行环境下引发同一类型异常关闭的次数超过预设阈值的组件,所述在相同运行环境下引发同一类型异常关闭的次数从所述服务器侧记录的所述浏览器的在先异常关闭信息获得;所述在先异常关闭信息由所述服务器侧依据所述重启信息查询获得,所述服务器侧记录的所述浏览器的在先异常关闭信息可以为,与所述浏览器内核的版本信息以及所述浏览器所在的设备信息相匹配的在先异常关闭信息。
[0263]步骤905,依据所述阻止加载指令阻止加载所述组件。
[0264]所述阻止加载指令可以为,所述服务器侧在依据所述组件的信息判定所述组件为非关键组件时生成的阻止加载指令。
[0265]步骤906,接收服务器侧下发的、在依据所述组件的信息判定所述组件为关键组件时生成的提示版本更新的指令,依据所述提示版本更新的指令加载所述组件,并显示所述组件版本更新的提示信息。
[0266]在具体实现中,所述组件版本更新的提示信息可以为提示用户升级所述组件版本的信息,或者,提示用户将所述组件的版本更改为稳定版本的信息;可以在浏览器中以黄色提示条的方式显示提示信息,或者,在浏览器中以提示消息框的方式显示提示信息。本发明实施例对此并不加以限制。
[0267]步骤907,接收服务器侧下发的、在依据所述组件的信息判定所述组件为不安全组件时生成的黑名单写入指令,依据所述黑名单写入指令阻止加载所述组件,并将所述组件写入浏览器侧的黑名单。
[0268]需要说明的是,步骤904、步骤906和步骤907并不表示按照上述顺序执行,实际上该3个步骤为并列执行的步骤。
[0269]本发明实施例6中在浏览器异常关闭后重启时,可以显示提示信息,用户可以选择是否进入安全模式,当确认进入安全模式之后可以执行后续的处理过程。并且服务器侧可以依据不同的组件的信息生成不同的指令,浏览器侧则依据服务器侧下发的不同指令执行对应的操作即可,从而在浏览器重启之后不会再由于同样的原因导致再次异常关闭,从根本上解决了浏览器异常关闭的问题。
[0270]上述实施例4和实施例5是从服务器侧进行描述,实施例6是从浏览器侧进行描述。下面,从整体对浏览器异常关闭的处理方法进行描述,该方法具体可以包括以下步骤:
[0271]步骤A,浏览器侧在异常关闭时,将所述浏览器的异常关闭信息上传至服务器侧;
[0272]步骤B,服务器侧接收并记录浏览器侧在异常关闭时上传的所述浏览器的异常关闭信息;
[0273]步骤C,浏览器侧在异常关闭后重启时,加载弹窗显示是否进入安全模式的提示信息;
[0274]在用户确认进入安全模式时,执行后续的步骤D。
[0275]步骤D,浏览器侧将所述浏览器的重启信息上传至服务器侧;
[0276]步骤E,服务器侧接收浏览器侧在异常关闭后重启时上传的所述浏览器的重启信息,依据所述重启信息查询服务器侧记录的所述浏览器的在先异常关闭信息;
[0277]步骤F,服务器侧若依据所述引发异常关闭的组件信息及其运行环境信息,判定由同一组件在相同运行环境下引发同一类型异常关闭的次数超过预设阈值,则依据所述组件的信息生成阻止加载指令,并将所述阻止加载指令下发至浏览器侧;
[0278]步骤G,浏览器侧接收服务器侧下发的阻止加载指令,并依据所述阻止加载指令阻止加载所述组件;
[0279]步骤H,服务器侧在依据所述组件的信息判定所述组件为关键组件时,生成提示版本更新的指令,并将所述提示版本更新的指令下发至浏览器侧;
[0280]步骤I,浏览器侧接收服务器侧下发的、在依据所述组件的信息判定所述组件为关键组件时生成的提示版本更新的指令,依据所述提示版本更新的指令加载所述组件,并显示所述组件版本更新的提示信息;
[0281]步骤J,服务器侧在依据所述组件的信息判定所述组件为不安全组件时,生成黑名单写入指令,并将所述黑名单写入指令下发至浏览器侧;
[0282]在本发明的一种优选实施例中,在服务器侧依据所述组件的信息判定所述组件为不安全组件时,还可以将该组件写入服务器侧的黑名单,此时服务器侧可以不将所述黑名单写入指令下发至浏览器侧,只需通知浏览器侧该组件为不安全组件即可,浏览器侧还用于阻止加载该组件。当然,在这种情况下,服务器侧仍然可以将所述黑名单写入指令下发至浏览器侧,本发明实施例对此并不加以限制。
[0283]步骤K,浏览器侧接收服务器侧下发的、在依据所述组件的信息判定所述组件为不安全组件时生成的黑名单写入指令,依据所述黑名单写入指令阻止加载所述组件,并将所述组件写入浏览器侧的黑名单。
[0284]对于前述各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明实施例并不受所描述的动作顺序的限制,因为依据本发明实施例,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作并不一定是本发明实施例所必须的。
[0285]参照图10,示出了根据本发明一个实施例的一种服务器实施例2的结构框图,所述服务器与浏览器通信,所述服务器可以包括如下模块:
[0286]接收记录模块1001,适于接收并记录浏览器侧在异常关闭时上传的所述浏览器的异常关闭息。
[0287]接收查询模块1002,适于接收浏览器侧在异常关闭后重启时上传的所述浏览器的重启信息,依据所述重启信息查询服务器侧记录的所述浏览器的在先异常关闭信息;
[0288]在本发明的一种优选实施例中,所述重启信息包括所述浏览器内核的版本信息以及所述浏览器所在的设备信息;所述服务器侧记录的所述浏览器的在先异常关闭信息为,与所述浏览器内核的版本信息以及所述浏览器所在的设备信息相匹配的在先异常关闭信肩、O
[0289]第一生成模块1003,适于在服务器侧依据所述引发异常关闭的组件信息及其运行环境信息,判定由同一组件在相同运行环境下引发同一类型异常关闭的次数超过预设阈值时,依据所述组件的信息生成阻止加载指令;[0290]第一下发模块1004,适于将所述阻止加载指令下发至浏览器侧,所述浏览器侧用于依据所述阻止加载指令阻止加载所述组件;
[0291]第二生成模块1005,适于在依据所述组件的信息判定所述组件为关键组件时,生成提示版本更新的指令;
[0292]第二下发模块1006,适于将所述提示版本更新的指令下发至浏览器侧,所述浏览器侧还用于依据所述提示版本更新的指令加载所述组件,并显示所述组件版本更新的提示
信息;
[0293]第三生成模块1007,适于在依据所述组件的信息判定所述组件为不安全组件时,生成黑名单写入指令;
[0294]第三下发模块1008,适于将所述黑名单写入指令下发至浏览器侧,所述浏览器侧还用于依据所述黑名单写入指令阻止加载所述组件,并将所述组件写入浏览器侧的黑名单。
[0295]写入模块1009,适于在依据所述组件的信息判定所述组件为不安全组件时,将所述组件写入服务器侧的黑名单,所述浏览器侧还用于阻止加载所述组件。
[0296]在本发明的一种优选实施例中,所述第一生成模块还适于:依据所述组件的信息判定所述组件是否为非关键组件;若是,则生成阻止加载指令。所述第一生成模块还适于:查找预先配置的不稳定组件名单中是否存在所述组件的信息;若存在,则确定所述组件为非关键组件;若不存在,则确定所述组件为关键组件。
[0297]在本发明的一种优选实施例中,所述浏览器异常关闭可以包括由Flash、第三方安全组件或浏览器内部组件为第三方软件、分层服务提供程序LSP、插件、扩展、图形处理器GPU加速中的任意一个或多个引起的异常关闭。
[0298]所述异常关闭信息可以包括引发异常关闭的组件信息及其运行环境信息。所述引发异常关闭的组件信息可以包括:所述组件的名称、所述组件的版本和所述组件的MD5值;所述引发异常关闭的组件的运行环境信息可以包括:所述组件运行时的操作系统版本和所述组件运行时的浏览器内核版本。所述异常关闭信息还可以包括,异常关闭的类型以及异常参数值,所述异常关闭的类型可以包括访问违例EXCEPT10N_ACCESS_V10LAT10N、除零错误、内存耗尽、以及调试断点;当异常关闭的类型为访问违例时,所述异常参数值可以包括内存地址偏移量。
[0299]对于上述服务器实施例2而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见图7、图8和图9所示方法实施例的部分说明即可。
[0300]参照图11,示出了根据本发明一个实施例的一种浏览器实施例2的结构框图,所述浏览器与服务器通信,所述浏览器可以包括如下模块:
[0301]第二上传模块1101,适于在浏览器异常关闭时,将所述浏览器的异常关闭信息上传至服务器侧;
[0302]弹窗显示模块1102,适于在第一上传模块将重启信息上传至服务器侧之前,加载弹窗显示是否进入安全模式的提示信息;
[0303]以及在用户确认进入安全模式后,调用所述第一上传模块。
[0304]第一上传模块1103,适于在浏览器异常关闭后重启时,将所述浏览器的重启信息上传至服务器侧;[0305]第一接收模块1104,适于接收服务器侧下发的阻止加载指令;
[0306]阻止模块1105,适于依据所述阻止加载指令阻止加载所述组件;
[0307]第二接收模块1106,适于接收服务器侧下发的、在依据所述组件的信息判定所述组件为关键组件时生成的提示版本更新的指令;
[0308]加载显示模块1107,适于依据所述提示版本更新的指令加载所述组件,并显示所述组件版本更新的提示信息;
[0309]第三接收模块1108,适于接收服务器侧下发的、在依据所述组件的信息判定所述组件为不安全组件时生成的黑名单写入指令;
[0310]阻止写入模块1109,适于依据所述黑名单写入指令阻止加载所述组件,并将所述组件写入浏览器侧的黑名单。
[0311]在本发明的一种优选实施例中,所述重启信息可以包括所述浏览器内核的版本信息以及所述浏览器所在的设备信息;所述服务器侧记录的所述浏览器的在先异常关闭信息可以为,与所述浏览器内核的版本信息以及所述浏览器所在的设备信息相匹配的在先异常关闭信息。
[0312]所述阻止加载指令为所述服务器侧依据组件的信息生成的指令,具体为所述服务器侧在依据所述组件的信息判定所述组件为非关键组件时生成的阻止加载指令。所述组件为在相同运行环境下引发同一类型异常关闭的次数超过预设阈值的组件,所述在相同运行环境下引发同一类型异常关闭的次数从所述服务器侧记录的所述浏览器的在先异常关闭信息获得,所述异常关闭信息包括引发异常关闭的组件信息及其运行环境信息;所述在先异常关闭信息由所述服务器侧依据所述重启信息查询获得。
[0313]对于上述浏览器实施例2而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见图7、图8和图9所示方法实施例的部分说明即可。
[0314]本发明还提供了一种浏览器异常关闭的处理系统,具体可以包括浏览器和服务器,其中,对于服务器的描述参照上述图10所示的服务器实施例2的部分说明即可;对于浏览器的描述参照上述图11所示的浏览器实施例2的部分说明即可。
[0315]本发明中,在浏览器异常关闭后重启时,首先读取浏览器侧记录的在先异常关闭信息;然后在依据引发异常关闭的组件信息及其运行环境信息,判定由同一组件在相同运行环境下引发同一类型异常关闭的次数超过预设阈值时,将组件的信息发送至服务器侧;最后接收服务器侧下发的、依据组件的信息生成的阻止加载指令,并依据阻止加载指令阻止加载组件。本发明可以在浏览器重启时阻止加载之前在相同运行环境下引发同一类型异常关闭的次数超过预设阈值的组件,从而在浏览器重启之后不会再由于同样的原因导致再次异常关闭,从根本上解决了浏览器异常关闭的问题。
[0316]在此提供的算法和显示不与任何特定计算机、虚拟系统或者其它设备固有相关。各种通用系统也可以与基于在此的示教一起使用。根据上面的描述,构造这类系统所要求的结构是显而易见的。此外,本发明也不针对任何特定编程语言。应当明白,可以利用各种编程语言实现在此描述的本发明的内容,并且上面对特定语言所做的描述是为了披露本发明的最佳实施方式。
[0317]在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。
[0318]类似地,应当理解,为了精简本公开并帮助理解各个发明方面中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本发明要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,如下面的权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循【具体实施方式】的权利要求书由此明确地并入该【具体实施方式】,其中每个权利要求本身都作为本发明的单独实施例。
[0319]本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。
[0320]此外,本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。例如,在下面的权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。
[0321 ] 本发明的各个部件实施例可以以硬件实现,或者以在一个或者多个处理器上运行的软件模块实现,或者以它们的组合实现。本领域的技术人员应当理解,可以在实践中使用微处理器或者数字信号处理器(DSP)来实现根据本发明实施例的浏览器异常关闭的处理方法、系统、服务器和浏览器中的一些或者全部部件的一些或者全部功能。本发明还可以实现为用于执行这里所描述的方法的一部分或者全部的设备或者装置程序(例如,计算机程序和计算机程序产品)。这样的实现本发明的程序可以存储在计算机可读介质上,或者可以具有一个或者多个信号的形式。这样的信号可以从因特网网站上下载得到,或者在载体信号上提供,或者以任何其他形式提供。
[0322]应该注意的是上述实施例对本发明进行说明而不是对本发明进行限制,并且本领域技术人员在不脱离所附权利要求的范围的情况下可设计出替换实施例。在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的元件或步骤。位于元件之前的单词“一”或“一个”不排除存在多个这样的元件。本发明可以借助于包括有若干不同元件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。
[0323]本发明公开了 Al、一种浏览器异常关闭的处理方法,包括:
[0324]接收浏览器侧在异常关闭后重启时上传的所述浏览器的重启信息,依据所述重启信息查询服务器侧记录的所述浏览器的在先异常关闭信息;所述异常关闭信息包括引发异常关闭的组件信息及其运行环境信息;
[0325]若服务器侧依据所述引发异常关闭的组件信息及其运行环境信息,判定由同一组件在相同运行环境下引发同一类型异常关闭的次数超过预设阈值,则依据所述组件的信息生成阻止加载指令,并将所述阻止加载指令下发至浏览器侧,所述浏览器侧用于依据所述阻止加载指令阻止加载所述组件。
[0326]A2、如Al所述的方法,其特征在于,所述依据所述组件的信息生成阻止加载指令的步骤包括:
[0327]依据所述组件的信息判定所述组件是否为非关键组件;
[0328]若是,则生成阻止加载指令。
[0329]A3、如Al或A2所述的方法,其特征在于,还包括:
[0330]在依据所述组件的信息判定所述组件为关键组件时,生成提示版本更新的指令;
[0331]将所述提示版本更新的指令下发至浏览器侧,所述浏览器侧还用于依据所述提示版本更新的指令加载所述组件,并显示所述组件版本更新的提示信息。
[0332]A4、如Al或A2或A3所述的方法,其特征在于,还包括:
[0333]在依据所述组件的信息判定所述组件为不安全组件时,生成黑名单写入指令;
[0334]将所述黑名单写入指令下发至浏览器侧,所述浏览器侧还用于依据所述黑名单写入指令阻止加载所述组件,并将所述组件写入浏览器侧的黑名单。
[0335]A5、如Al所述的方法,其特征在于,还包括:
[0336]在依据所述组件的信息判定所述组件为不安全组件时,将所述组件写入服务器侧的黑名单,所述浏览器侧还用于阻止加载所述组件。
[0337]A6、如A2所述的方法,其特征在于,所述依据所述组件的信息判定所述组件是否为非关键组件的步骤包括:
[0338]查找预先配置的不稳定组件名单中是否存在所述组件的信息;
[0339]若存在,则确定所述组件为非关键组件;
[0340]若不存在,则确定所述组件为关键组件。
[0341]A7、如Al所述的方法,其特征在于,所述浏览器异常关闭包括由Flash、第三方安全组件或浏览器内部组件为第三方软件、分层服务提供程序LSP、插件、扩展、图形处理器GPU加速中的任意一个或多个引起的异常关闭。
[0342]AS、如Al所述的方法,其特征在于,还包括:
[0343]接收并记录浏览器侧在异常关闭时上传的所述浏览器的异常关闭信息。
[0344]A9、如Al所述的方法,其特征在于,所述引发异常关闭的组件信息包括:所述组件的名称、所述组件的版本和所述组件的MD5值;所述引发异常关闭的组件的运行环境信息包括:所述组件运行时的操作系统版本和所述组件运行时的浏览器内核版本。
[0345]A10、如Al或A9所述的方法,其特征在于,所述异常关闭信息还包括,异常关闭的类型以及异常参数值,所述异常关闭的类型包括访问违例EXCEPT10N_ACCESS_V10LAT10N,所述异常参数值包括内存地址偏移量。
[0346]All、如AlO所述的方法,其特征在于,所述异常关闭的类型还包括:除零错误、内存耗尽、以及调试断点。
[0347]A12、如Al所述的方法,其特征在于,所述重启信息包括所述浏览器内核的版本信息以及所述浏览器所在的设备信息;所述服务器侧记录的所述浏览器的在先异常关闭信息为,与所述浏览器内核的版本信息以及所述浏览器所在的设备信息相匹配的在先异常关闭信息。
[0348]本发明还公开了 B13、一种浏览器异常关闭的处理方法,包括:
[0349]在浏览器异常关闭后重启时,将所述浏览器的重启信息上传至服务器侧;
[0350]接收服务器侧下发的阻止加载指令;所述阻止加载指令为所述服务器侧依据组件的信息生成的指令,所述组件为在相同运行环境下引发同一类型异常关闭的次数超过预设阈值的组件,所述在相同运行环境下引发同一类型异常关闭的次数从所述服务器侧记录的所述浏览器的在先异常关闭信息获得,所述异常关闭信息包括引发异常关闭的组件信息及其运行环境信息;所述在先异常关闭信息由所述服务器侧依据所述重启信息查询获得;
[0351]依据所述阻止加载指令阻止加载所述组件。
[0352]B14、如B13所述的方法,其特征在于,所述阻止加载指令为,所述服务器侧在依据所述组件的信息判定所述组件为非关键组件时生成的阻止加载指令。
[0353]B15、如B13或B14所述的方法,其特征在于,还包括:
[0354]接收服务器侧下发的、在依据所述组件的信息判定所述组件为关键组件时生成的提示版本更新的指令,依据所述提示版本更新的指令加载所述组件,并显示所述组件版本更新的提示信息。
[0355]16、如B13或B14或B15所述的方法,其特征在于,还包括:
[0356]接收服务器侧下发的、在依据所述组件的信息判定所述组件为不安全组件时生成的黑名单写入指令,依据所述黑名单写入指令阻止加载所述组件,并将所述组件写入浏览器侧的黑名单。
[0357]B17、如B13所述的方法,其特征在于,还包括:
[0358]在浏览器异常关闭时,将所述浏览器的异常关闭信息上传至服务器侧。
[0359]B13所述的方法,其特征在于,在将重启信息上传至服务器侧的步骤之前,还包括:
[0360]加载弹窗显示是否进入安全模式的提示信息;
[0361]当用户确认进入安全模式后,执行所述将重启信息上传至服务器侧的步骤。
[0362]B19、如B13所述的方法,其特征在于,所述引发异常关闭的组件信息包括:所述组件的名称、所述组件的版本和所述组件的MD5值;所述引发异常关闭的组件的运行环境信息包括:所述组件运行时的操作系统版本和所述组件运行时的浏览器内核版本。
[0363]B20、如B13所述的方法,其特征在于,所述重启信息包括所述浏览器内核的版本信息以及所述浏览器所在的设备信息;所述服务器侧记录的所述浏览器的在先异常关闭信息为,与所述浏览器内核的版本信息以及所述浏览器所在的设备信息相匹配的在先异常关闭信息。
[0364]本发明还公开了 C21、一种服务器,包括:
[0365]接收查询模块,适于接收浏览器侧在异常关闭后重启时上传的所述浏览器的重启信息,依据所述重启信息查询服务器侧记录的所述浏览器的在先异常关闭信息;所述异常关闭信息包括引发异常关闭的组件信息及其运行环境信息;
[0366]第一生成模块,适于在服务器侧依据所述引发异常关闭的组件信息及其运行环境信息,判定由同一组件在相同运行环境下引发同一类型异常关闭的次数超过预设阈值时,依据所述组件的信息生成阻止加载指令;
[0367]第一下发模块,适于将所述阻止加载指令下发至浏览器侧,所述浏览器侧用于依据所述阻止加载指令阻止加载所述组件。
[0368]C22、如C21所述的服务器,其特征在于,所述第一生成模块还适于:
[0369]依据所述组件的信息判定所述组件是否为非关键组件;若是,则生成阻止加载指令。
[0370]C23、如C21或C22所述的服务器,其特征在于,还包括:
[0371]第二生成模块,适于在依据所述组件的信息判定所述组件为关键组件时,生成提示版本更新的指令;
[0372]第二下发模块,适于将所述提示版本更新的指令下发至浏览器侧,所述浏览器侧还用于依据所述提示版本更新的指令加载所述组件,并显示所述组件版本更新的提示信
肩、O
[0373]C24、如C21或C22或C23所述的服务器,其特征在于,还包括:
[0374]第三生成模块,适于在依据所述组件的信息判定所述组件为不安全组件时,生成黑名单写入指令;
[0375]第三下发模块,适于将所述黑名单写入指令下发至浏览器侧,所述浏览器侧还用于依据所述黑名单写入指令阻止加载所述组件,并将所述组件写入浏览器侧的黑名单。
[0376]C25、如C21所述的服务器,其特征在于,还包括:
[0377]写入模块,适于在依据所述组件的信息判定所述组件为不安全组件时,将所述组件写入服务器侧的黑名单,所述浏览器侧还用于阻止加载所述组件。
[0378]C26、如C22所述的服务器,其特征在于,所述第一生成模块还适于:
[0379]查找预先配置的不稳定组件名单中是否存在所述组件的信息;
[0380]若存在,则确定所述组件为非关键组件;
[0381]若不存在,则确定所述组件为关键组件。
[0382]C27、如C21所述的服务器,其特征在于,所述浏览器异常关闭包括由Flash、第三方安全组件或浏览器内部组件为第三方软件、分层服务提供程序LSP、插件、扩展、图形处理器GPU加速中的任意一个或多个引起的异常关闭。
[0383]C28、如C21所述的服务器,其特征在于,还包括:
[0384]接收记录模块,适于接收并记录浏览器侧在异常关闭时上传的所述浏览器的异常关闭信息。
[0385]C29、如C21所述的服务器,其特征在于,所述引发异常关闭的组件信息包括:所述组件的名称、所述组件的版本和所述组件的MD5值;所述引发异常关闭的组件的运行环境信息包括:所述组件运行时的操作系统版本和所述组件运行时的浏览器内核版本。
[0386]C30、如C21或C29所述的服务器,其特征在于,所述异常关闭信息还包括,异常关闭的类型以及异常参数值,所述异常关闭的类型包括访问违例EXCEPTION_ACCESS_VIOLATION,所述异常参数值包括内存地址偏移量。
[0387]C31、如C30所述的服务器,其特征在于,所述异常关闭的类型还包括:除零错误、内存耗尽、以及调试断点。[0388]C32、如C21所述的服务器,其特征在于,所述重启信息包括所述浏览器内核的版本信息以及所述浏览器所在的设备信息;所述服务器侧记录的所述浏览器的在先异常关闭信息为,与所述浏览器内核的版本信息以及所述浏览器所在的设备信息相匹配的在先异常关闭信息。
[0389]本发明还公开了 D33、一种浏览器,包括:
[0390]第一上传模块,适于在浏览器异常关闭后重启时,将所述浏览器的重启信息上传至服务器侧;
[0391]第一接收模块,适于接收服务器侧下发的阻止加载指令;所述阻止加载指令为所述服务器侧依据组件的信息生成的指令,所述组件为在相同运行环境下引发同一类型异常关闭的次数超过预设阈值的组件,所述在相同运行环境下引发同一类型异常关闭的次数从所述服务器侧记录的所述浏览器的在先异常关闭信息获得,所述异常关闭信息包括引发异常关闭的组件信息及其运行环境信息;所述在先异常关闭信息由所述服务器侧依据所述重启信息查询获得;
[0392]阻止模块,适于依据所述阻止加载指令阻止加载所述组件。
[0393]D34、如D33所述的浏览器,其特征在于,所述阻止加载指令为,所述服务器侧在依据所述组件的信息判定所述组件为非关键组件时生成的阻止加载指令。
[0394]D35、如D33或D34所述的浏览器,其特征在于,还包括:
[0395]第二接收模块,适于接收服务器侧下发的、在依据所述组件的信息判定所述组件为关键组件时生成的提不版本更新的指令;
[0396]加载显示模块,适于依据所述提示版本更新的指令加载所述组件,并显示所述组件版本更新的提示信息。
[0397]D36、如D33或D34或D35所述的浏览器,其特征在于,还包括:
[0398]第三接收模块,适于接收服务器侧下发的、在依据所述组件的信息判定所述组件为不安全组件时生成的黑名单写入指令;
[0399]阻止写入模块,适于依据所述黑名单写入指令阻止加载所述组件,并将所述组件写入浏览器侧的黑名单。
[0400]D37、如D33所述的浏览器,其特征在于,还包括:
[0401]第二上传模块,适于在浏览器异常关闭时,将所述浏览器的异常关闭信息上传至服务器侧。
[0402]D38、如D33所述的浏览器,其特征在于,还包括:
[0403]弹窗显示模块,适于在第一上传模块将重启信息上传至服务器侧之前,加载弹窗显示是否进入安全模式的提示信息;
[0404]以及在用户确认进入安全模式后,调用所述第一上传模块。
[0405]D39、如D33所述的浏览器,其特征在于,所述引发异常关闭的组件信息包括:所述组件的名称、所述组件的版本和所述组件的MD5值;所述引发异常关闭的组件的运行环境信息包括:所述组件运行时的操作系统版本和所述组件运行时的浏览器内核版本。
[0406]D40、如D33所述的浏览器,其特征在于,所述重启信息包括所述浏览器内核的版本信息以及所述浏览器所在的设备信息;所述服务器侧记录的所述浏览器的在先异常关闭信息为,与所述浏览器内核的版本信息以及所述浏览器所在的设备信息相匹配的在先异常关闭信息。
[0407]本发明还公开了 E41、一种浏览器异常关闭的处理系统,包括如权利要求C21至C32中任意一项所述的服务器、以及如权利要求D33至D40中任意一项所述的浏览器。
【权利要求】
1.一种浏览器异常关闭的处理方法,包括: 接收浏览器侧在异常关闭后重启时上传的所述浏览器的重启信息,依据所述重启信息查询服务器侧记录的所述浏览器的在先异常关闭信息;所述异常关闭信息包括引发异常关闭的组件信息及其运行环境信息; 若服务器侧依据所述引发异常关闭的组件信息及其运行环境信息,判定由同一组件在相同运行环境下引发同一类型异常关闭的次数超过预设阈值,则依据所述组件的信息生成阻止加载指令,并将所述阻止加载指令下发至浏览器侧,所述浏览器侧用于依据所述阻止加载指令阻止加载所述组件。
2.如权利要求1所述的方法,其特征在于,所述依据所述组件的信息生成阻止加载指令的步骤包括: 依据所述组件的信息判定所述组件是否为非关键组件; 若是,则生成阻止加载指令。
3.如权利要求1或2所述的方法,其特征在于,还包括: 在依据所述组件的信息判定所述组件为关键组件时,生成提示版本更新的指令; 将所述提示版本更新的指令下发至浏览器侧,所述浏览器侧还用于依据所述提示版本更新的指令加载所述组件,并显示所述组件版本更新的提示信息。
4.如权利要求1或2或3所述的方法,其特征在于,还包括: 在依据所述组件的信息判定所述组件为不安全组件时,生成黑名单写入指令; 将所述黑名单写入指令下发至浏`览器侧,所述浏览器侧还用于依据所述黑名单写入指令阻止加载所述组件,并将所述组件写入浏览器侧的黑名单。
5.如权利要求1所述的方法,其特征在于,还包括: 在依据所述组件的信息判定所述组件为不安全组件时,将所述组件写入服务器侧的黑名单,所述浏览器侧还用于阻止加载所述组件。
6.一种浏览器异常关闭的处理方法,包括: 在浏览器异常关闭后重启时,将所述浏览器的重启信息上传至服务器侧; 接收服务器侧下发的阻止加载指令;所述阻止加载指令为所述服务器侧依据组件的信息生成的指令,所述组件为在相同运行环境下引发同一类型异常关闭的次数超过预设阈值的组件,所述在相同运行环境下引发同一类型异常关闭的次数从所述服务器侧记录的所述浏览器的在先异常关闭信息获得,所述异常关闭信息包括引发异常关闭的组件信息及其运行环境信息;所述在先异常关闭信息由所述服务器侧依据所述重启信息查询获得; 依据所述阻止加载指令阻止加载所述组件。
7.一种服务器,包括: 接收查询模块,适于接收浏览器侧在异常关闭后重启时上传的所述浏览器的重启信息,依据所述重启信息查询服务器侧记录的所述浏览器的在先异常关闭信息;所述异常关闭信息包括引发异常关闭的组件信息及其运行环境信息; 第一生成模块,适于在服务器侧依据所述引发异常关闭的组件信息及其运行环境信息,判定由同一组件在相同运行环境下引发同一类型异常关闭的次数超过预设阈值时,依据所述组件的信息生成阻止加载指令; 第一下发模块,适于将所述阻止加载指令下发至浏览器侧,所述浏览器侧用于依据所述阻止加载指令阻止加载所述组件。
8.如权利要求7所述的服务器,其特征在于,所述第一生成模块还适于: 依据所述组件的信息判定所述组件是否为非关键组件;若是,则生成阻止加载指令。
9.一种浏览器,包括: 第一上传模块,适于在浏览器异常关闭后重启时,将所述浏览器的重启信息上传至服务器侧; 第一接收模块,适于接收服务器侧下发的阻止加载指令;所述阻止加载指令为所述服务器侧依据组件的信息生成的指令,所述组件为在相同运行环境下引发同一类型异常关闭的次数超过预设阈值的组件,所述在相同运行环境下引发同一类型异常关闭的次数从所述服务器侧记录的所述浏览器的在先异常关闭信息获得,所述异常关闭信息包括引发异常关闭的组件信息及其运行环境信息;所述在先异常关闭信息由所述服务器侧依据所述重启信息查询获得; 阻止模块,适于依据所述阻止加载指令阻止加载所述组件。
10.一种浏览器异常关闭的处理系统,包括如权利要求7至8中任意一项所述的服务器、以及如权利要求9所述浏·览器。
【文档编号】H04L29/08GK103595765SQ201310499970
【公开日】2014年2月19日 申请日期:2013年10月22日 优先权日:2013年10月22日
【发明者】刘庆平, 任寰 申请人:北京奇虎科技有限公司, 奇智软件(北京)有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1