发明内容
本发明实施例所要解决的技术问题在于,提供一种访问GAE托管网站的方法及对应的控制装置和系统,可防止托管在GAE上的应用程序由于其对应的域名受到DNS污染,使用户无法访问或被绑架到其它的网站,避免为应用程序的提供者造成损失,也避免给用户造成不好的体验。
为了解决上述技术问题,本发明实施例提供了一种访问GAE托管网站的方法,包括:
浏览器接收用户输入的GAE托管的目标网站的域名,并在本地的系统文件Hosts中查找是否存在所述目标网站的域名和IP地址;
若Hosts文件中存在目标网站的域名和IP地址,则直接访问所述目标网站的IP地址;若Hosts文件中不存在目标网站的域名和IP地址,则查询服务器提供的GAE托管网站的域名IP对应表中是否存在所述目标网站的域名和IP地址;
若所述域名IP对应表中存在目标网站的域名以及对应的IP地址,则直接访问所述目标网站的域名所对应的IP地址。
其中,所述查询服务器提供的GAE托管网站的域名IP对应表中是否存在所述目标网站的域名和IP地址之后还包括:
若所述域名IP对应表中不存在目标网站的域名以及对应的IP地址,则将所述目标网站的域名发送至服务器,并接收所述服务器反馈的所述目标网站的域名所对应的IP地址;
访问所述目标网站的域名所对应的IP地址。
其中,所述访问所述目标网站的域名所对应的IP地址之后,还包括:
将所述目标网站的域名和IP地址写入本地的Hosts文件中。
其中,本方法还包括:
服务器周期性的核对托管在GAE上的网站的域名和IP地址;
服务器按照预置的排序规则,从获取的托管在GAE上的网站的域名和IP地址中选取一部分生成域名IP对应表;
向客户端提供所述域名IP对应表。
其中,所述排序规则包括:按照网站的访问量排序、按照网站的响应速度排序。
相应地,本发明实施例还提供了一种访问GAE托管网站的控制系统,包括:GAE托管网站的管理服务器以及位于客户端的访问GAE托管网站的控制装置和浏览器;
GAE托管网站的管理服务器,用于周期性的核对托管在GAE上的网站的域名和IP地址;用于按照预置的排序规则,从获取的托管在GAE上的网站的域名和IP地址中选取一部分生成域名IP对应表;并向客户端提供所述排序建表模块生成的域名IP对应表;
访问GAE托管网站的控制装置,用于在浏览器接收用户输入的GAE托管的目标网站的域名后,在本地的系统文件Hosts中查找是否存在所述目标网站的域名和IP地址;若Hosts文件中存在目标网站的域名和IP地址,则直接访问所述目标网站的IP地址;若Hosts文件中不存在目标网站的域名和IP地址,则查询服务器提供的GAE托管网站的域名IP对应表中是否存在所述目标网站的域名和IP地址;若所述域名IP对应表中存在目标网站的域名以及对应的IP地址,则直接访问所述目标网站的域名所对应的IP地址;
浏览器,用于在所述访问GAE托管网站的控制装置的控制下,访问目标网站。
相应地,本发明实施例还提供了一种访问GAE托管网站的控制装置,包括:
第一查询模块,用于在浏览器接收用户输入的GAE托管的目标网站的域名后,在本地的系统文件Hosts中查找是否存在所述目标网站的域名和IP地址;
第二查询模块,用于在所述第一查询模块判定Hosts文件中不存在目标网站的域名和IP地址时,查询服务器提供的GAE托管网站的域名IP对应表中是否存在所述目标网站的域名和IP地址;
访问控制模块,用于在所述第一查询模块判定Hosts文件中存在目标网站的域名和IP地址,或所述第二查询模块判定域名IP对应表中存在目标网站的域名以及对应的IP地址时,控制浏览器访问所述目标网站的域名所对应的IP地址。
其中,该控制装置还包括:
第三查询模块,用于在所述第二查询模块判定所述域名IP对应表中不存在目标网站的域名以及对应的IP地址时,将所述目标网站的域名发送至服务器,并接收所述服务器反馈的所述目标网站的域名所对应的IP地址;且控制浏览器访问所述目标网站的域名所对应的IP地址。
其中,该控制装置还包括:
Hosts文件管理模块,用于将所述第二查询模块和/或第三查询模块查询获得的所述目标网站的域名和IP地址写入本地的Hosts文件中。
相应地,本发明实施例还提供了一种GAE托管网站的管理服务器,包括:
IP核查模块,用于周期性的核对托管在GAE上的网站的域名和IP地址;
排序建表模块,用于按照预置的排序规则,从获取的托管在GAE上的网站的域名和IP地址中选取一部分生成域名IP对应表;
服务模块,用于向客户端提供所述排序建表模块生成的域名IP对应表。
其中,所述排序规则包括:按照网站的访问量排序、按照网站的响应速度排序。
本发明实施例所提供的访问GAE托管网站的方法及对应的控制装置和系统,可防止托管在GAE上的应用程序由于其对应的域名受到DNS污染,使用户无法访问或被绑架到其它的网站,避免为应用程序的提供者造成损失,也避免给用户造成不好的体验。
具体实施方式
本发明实施例所提供的访问GAE托管网站的方法及对应的控制装置和系统,可防止托管在GAE上的应用程序由于其对应的域名受到DNS污染,使用户无法访问或被绑架到其它的网站,避免为应用程序的提供者造成损失,也避免给用户造成不好的体验。
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
参见图1,为本发明提供的访问GAE托管网站的方法第一实施例流程示意图,如图所示,该方法包括:
步骤S100,浏览器接收用户输入的GAE托管的目标网站的域名。
步骤S101,在本地的系统文件Hosts中查找是否存在所述目标网站的域名和IP地址;若Hosts文件中存在目标网站的域名和IP地址,则执行步骤S104;若Hosts文件中不存在目标网站的域名和IP地址,则执行步骤S102。
步骤S102,查询服务器提供的GAE托管网站的域名IP对应表中是否存在所述目标网站的域名和IP地址;若所述域名IP对应表中存在目标网站的域名以及对应的IP地址,则执行步骤S104;若所述域名IP对应表中不存在目标网站的域名以及对应的IP地址,则执行步骤S103。
步骤S103,按照预置流程获取目标网站的IP地址,例如将所述目标网站的域名发送至服务器,并接收所述服务器反馈的所述目标网站的域名所对应的IP地址。
步骤S104,访问所述目标网站的IP地址。
本发明实施例所提供的访问GAE托管网站的方法,可以保证浏览器能够访问到GAE托管网站的正确IP地址,防止托管在GAE上的应用程序由于其对应的域名受到DNS污染,使用户无法访问或被绑架到其它的网站,避免为应用程序的提供者造成损失,也避免给用户造成不好的体验。
参见图2,为本发明提供的访问GAE托管网站的方法第一实施例流程示意图。与上一实施例相比,本发明实施例将更为详细的描述该访问GAE托管网站的方法的流程。如图2所示,该方法包括:
步骤S200,服务器周期性的核对托管在GAE上的网站的域名和IP地址。更为具体的,服务器利用GAE 提供的定时任务机制,部署一个Ping服务功能,实现周期的ping一下配置的主机的地址列表,包括google服务器网址,获取托管在GAE上的网站的域名和IP地址。
更为具体的,ping不仅仅是windows下的命令,在unix和linux下也有这个命令,ping只是一个通信协议,是tcp/ip 协议的一部分。利用它可以检查网络是否能够连通,帮助分析判定网络故障。
步骤S201,服务器按照预置的排序规则,从获取的托管在GAE上的网站的域名和IP地址中选取一部分生成域名IP对应表。
更为具体的,服务器通过周期性的ping配置的主机地址列表,可以获取一大批托管在GAE上的网站的域名和IP地址,这些网站的域名和IP地址都是实际存在且有效的,但是服务器不可能将所有的网站域名和IP地址都提供给客户端,故服务器需要按照一定的算法从中排序并筛选出一部分网站域名和IP地址提供给客户端。
服务器可用的排序规则可以有很多,一般的出发点是找到用户最需要的、最常用的或访问质量最好的网站域名和IP地址提供给客户端。在本发明实施例中,服务器可以按照网站的访问量排序,因为访问量大的网站一般就是用户常用的网站,或者按照网站的响应速度排序,响应速度快的网站一般质量较高,给用户的使用体验会较好。
步骤S202,服务器向客户端提供所述域名IP对应表。服务器可以通过调度部署的邮件发送系统,将生成的域名IP对应表按照特定的格式发送到制定邮箱,由客户端到该到制定邮箱获取域名IP对应表。当然,客户端有时也会主动向服务器请求获取域名IP对应表或某一特定网站的IP地址,服务器可以设计对应的请求处理机制,为客户端提供对应的服务。
步骤S203,浏览器接收用户输入的GAE托管的目标网站的域名,并在本地的系统文件Hosts中查找是否存在所述目标网站的域名和IP地址。若Hosts文件中存在目标网站的域名和IP地址,则执行步骤S206;若Hosts文件中不存在目标网站的域名和IP地址,则执行步骤S204。
网站的域名必须对应一个IP地址。在Internet上域名与IP地址之间是一对一(或者多对一)的,域名虽然便于人们记忆,但机器之间只认IP地址,它们之间的转换工作称为域名解析。故浏览器接收用户输入的GAE托管的目标网站的域名后,必须先确定该目标网站的域名对应的IP地址。因此,浏览器首先在本地的Hosts文件中查找是否存在所述目标网站的域名和IP地址。
Hosts是一个没有扩展名的系统文件,可以用记事本等工具打开,其作用就是将一些常用的网址域名与其对应的IP地址建立一个关联“数据库”,当用户在浏览器中输入一个需要登录的网址时,系统会首先自动从Hosts文件中寻找对应的IP地址,一旦找到,则执行步骤S206,立即打开对应网页,如果没有找到,则执行步骤S204。
步骤S204,Hosts文件中不存在目标网站的域名和IP地址,则进一步查询服务器提供的GAE托管网站的域名IP对应表中是否存在所述目标网站的域名和IP地址;若所述域名IP对应表中存在目标网站的域名以及对应的IP地址,则将域名IP对应表中目标网站的域名以及对应的IP地址添加到本地的Hosts文件中,并执行步骤S206;若所述域名IP对应表中也不存在目标网站的域名以及对应的IP地址,则执行步骤S205。
需要说明的是,在Hosts文件中网站域名和IP地址以及服务器提供的域名IP对应表中的网站域名和IP地址基本是可以保证正确和有效的。
步骤S205,将所述目标网站的域名发送至服务器,并接收所述服务器反馈的所述目标网站的域名所对应的IP地址。更为具体的,在Hosts文件和域名IP对应表中都没有目标网站的域名和IP地址的情况下,可以直接通过DNS服务器解析域名,访问目标网站。但是若目标网站的已经受到DNS污染,则浏览器将无法访问到正确的目标网站。为保证浏览器可以访问到目标网站,本实施例针对此问题,设计了本步骤:客户端自动将待访问的目标网站的域名发送至服务器,由服务器去核查该目标网站的域名对应的正确IP地址,然后反馈给客户端。
步骤S206,客户端根据获取的目标网站IP地址访问该目标网站,同时,将该目标网站的域名和IP地址写入本地的Hosts文件。
步骤S207,客户端自身也会清理维护Hosts文件,在Hosts文件中记录的网站域名和IP地址数量达到上限时,将使用访问频率最低的网站域名和IP地址删除。
本发明实施例所提供的访问GAE托管网站的方法,通过先查本地Hosts文件,在找服务器提供的域名IP对应表,或直接找服务器查询目标网站IP地址的方式,保证客户端浏览器能够通过目标网站的域名解析到正确的IP地址,从而保证浏览器能够访问到GAE托管网站的正确IP地址,防止托管在GAE上的应用程序由于其对应的域名受到DNS污染,使用户无法访问或被绑架到其它的网站,避免为应用程序的提供者造成损失,也避免给用户造成不好的体验。
参见图3,为本发明提供的访问GAE托管网站的控制系统实施例结构示意图,包括:
GAE托管网站的管理服务器1以及位于客户端的访问GAE托管网站的控制装置2和浏览器3。
GAE托管网站的管理服务器1,用于周期性的核对托管在GAE上的网站的域名和IP地址;用于按照预置的排序规则,从获取的托管在GAE上的网站的域名和IP地址中选取一部分生成域名IP对应表;并向客户端提供所述排序建表模块生成的域名IP对应表。
访问GAE托管网站的控制装置2,用于在浏览器3接收用户输入的GAE托管的目标网站的域名后,在本地的系统文件Hosts中查找是否存在所述目标网站的域名和IP地址;若Hosts文件中存在目标网站的域名和IP地址,则直接访问所述目标网站的IP地址;若Hosts文件中不存在目标网站的域名和IP地址,则查询GAE托管网站的管理服务器1提供的GAE托管网站的域名IP对应表中是否存在所述目标网站的域名和IP地址;若所述域名IP对应表中存在目标网站的域名以及对应的IP地址,则直接访问所述目标网站的域名所对应的IP地址。
浏览器3,用于在所述访问GAE托管网站的控制装置2的控制下,访问目标网站。
本发明实施例所提供的访问GAE托管网站的控制系统,可以保证浏览器能够访问到GAE托管网站的正确IP地址,防止托管在GAE上的应用程序由于其对应的域名受到DNS污染,使用户无法访问或被绑架到其它的网站,避免为应用程序的提供者造成损失,也避免给用户造成不好的体验。
参见图4,为本发明提供的GAE托管网站的管理服务器实施例结构示意图。本实施例提供的服务器可应用于本发明提供的访问GAE托管网站的控制系统。该服务器如图4所示,包括:IP核查模块11、排序建表模块12、服务模块13。
IP核查模块11,用于周期性的核对托管在GAE上的网站的域名和IP地址。
更为具体的,服务器的IP核查模块11利用GAE 提供的定时任务机制,部署一个Ping服务功能,实现周期的ping一下配置的主机的地址列表,包括google服务器网址,获取托管在GAE上的网站的域名和IP地址。
排序建表模块12,用于按照预置的排序规则,从获取的托管在GAE上的网站的域名和IP地址中选取一部分生成域名IP对应表。更为具体的,服务器的IP核查模块11通过周期性的ping配置的主机地址列表,可以获取一大批托管在GAE上的网站的域名和IP地址,这些网站的域名和IP地址都是实际存在且有效的,但是服务器不可能将所有的网站域名和IP地址都提供给客户端,故服务器需要按照一定的算法从中排序并筛选出一部分网站域名和IP地址提供给客户端,这一处理过程就由排序建表模块12执行。
排序建表模块12可用的排序规则可以有很多,一般的出发点是找到用户最需要的、最常用的或访问质量最好的网站域名和IP地址提供给客户端。在本发明实施例中,排序建表模块12可以按照网站的访问量排序,因为访问量大的网站一般就是用户常用的网站,或者按照网站的响应速度排序,响应速度快的网站一般质量较高,给用户的使用体验会较好。
服务模块13,用于向客户端提供所述排序建表模块12生成的域名IP对应表。服务器的服务模块13可以通过调度部署的邮件发送系统,将排序建表模块12生成的域名IP对应表按照特定的格式发送到制定邮箱,由客户端到该到制定邮箱获取域名IP对应表。当然,客户端有时也会主动向服务器请求获取域名IP对应表或某一特定网站的IP地址,服务模块13可以设计对应的请求处理机制,为客户端提供对应的服务。
本发明实施例所提供的GAE托管网站的管理服务器,可以向客户端提供正确的网站域名与IP地址的对应关系,以保证客户端浏览器能够访问到GAE托管网站的正确IP地址,防止托管在GAE上的应用程序由于其对应的域名受到DNS污染,使用户无法访问或被绑架到其它的网站,避免为应用程序的提供者造成损失,也避免给用户造成不好的体验。
参见图5,为本发明提供的访问GAE托管网站的控制装置第一实施例结构示意图。本实施例提供的访问GAE托管网站的控制装置可应用于本发明提供的访问GAE托管网站的控制系统,实现本发明提供的访问GAE托管网站的方法。参见图5,该装置包括:
第一查询模块21,用于在浏览器接收用户输入的GAE托管的目标网站的域名后,在本地的系统文件Hosts中查找是否存在所述目标网站的域名和IP地址。
第二查询模块22,用于在所述第一查询模块判定Hosts文件中不存在目标网站的域名和IP地址时,查询服务器提供的GAE托管网站的域名IP对应表中是否存在所述目标网站的域名和IP地址。
访问控制模块24,用于在所述第一查询模块判定Hosts文件中存在目标网站的域名和IP地址,或所述第二查询模块判定域名IP对应表中存在目标网站的域名以及对应的IP地址时,控制浏览器访问所述目标网站的域名所对应的IP地址。
参见图6,为本发明提供的访问GAE托管网站的控制装置第二实施例结构示意图。本实施例提供的访问GAE托管网站的控制装置可应用于本发明提供的访问GAE托管网站的控制系统,实现本发明提供的访问GAE托管网站的方法。该装置如图6所示,包括:第一查询模块21、第二查询模块22、第三查询模块23、访问控制模块24、Hosts文件管理模块25。
第一查询模块21,用于在浏览器接收用户输入的GAE托管的目标网站的域名后,在本地的系统文件Hosts中查找是否存在所述目标网站的域名和IP地址。更为具体的,网站的域名必须对应一个IP地址。在Internet上域名与IP地址之间是一对一(或者多对一)的,域名虽然便于人们记忆,但机器之间只认IP地址,它们之间的转换工作称为域名解析。故浏览器接收用户输入的GAE托管的目标网站的域名后,必须先确定该目标网站的域名对应的IP地址。因此,第一查询模块21首先在本地的Hosts文件中查找是否存在所述目标网站的域名和IP地址。
Hosts是一个没有扩展名的系统文件,可以用记事本等工具打开,其作用就是将一些常用的网址域名与其对应的IP地址建立一个关联“数据库”,当用户在浏览器中输入一个需要登录的网址时,系统会首先自动从Hosts文件中寻找对应的IP地址,一旦找到,访问控制模块24控制浏览器立即访问目标网站的IP地址,打开对应网页,如果没有找到,则交由第二查询模块22进一步处理。
第二查询模块22,用于在所述第一查询模块判定Hosts文件中不存在目标网站的域名和IP地址时,查询服务器提供的GAE托管网站的域名IP对应表中是否存在所述目标网站的域名和IP地址。需要说明的是,在Hosts文件中网站域名和IP地址以及服务器提供的域名IP对应表中的网站域名和IP地址基本是可以保证正确和有效的。
第二查询模块22若在域名IP对应表中找到目标网站的域名以及对应的IP地址,则访问控制模块24控制浏览器立即访问目标网站的IP地址;第二查询模块22若在域名IP对应表中未找到目标网站的域名以及对应的IP地址,则交由第三查询模块22进一步处理。
第三查询模块23,用于在所述第二查询模块判定所述域名IP对应表中不存在目标网站的域名以及对应的IP地址时,将所述目标网站的域名发送至服务器,并接收所述服务器反馈的所述目标网站的域名所对应的IP地址;且控制浏览器访问所述目标网站的域名所对应的IP地址。
更为具体的,在Hosts文件和域名IP对应表中都没有目标网站的域名和IP地址的情况下,浏览器可以直接通过DNS服务器解析域名,访问目标网站。但是若目标网站的已经受到DNS污染,则浏览器将无法访问到正确的目标网站。为保证浏览器可以访问到目标网站,本实施例针对此问题,设计了第三查询模块23:第三查询模块23自动将待访问的目标网站的域名发送至服务器,由服务器去核查该目标网站的域名对应的正确IP地址,然后反馈第三查询模块23。
访问控制模块24,用于在所述第一查询模块21判定Hosts文件中存在目标网站的域名和IP地址,或所述第二查询模块22判定域名IP对应表中存在目标网站的域名以及对应的IP地址时,或所述第二查询模块23通过服务器获取了目标网站的域名以及对应的IP地址时,控制浏览器访问所述目标网站的域名所对应的IP地址。
Hosts文件管理模块25,用于将所述第二查询模块22和/或第三查询模块23查询获得的所述目标网站的域名和IP地址写入本地的Hosts文件中。同时,Hosts文件管理模块25清理维护Hosts文件,在Hosts文件中记录的网站域名和IP地址数量达到上限时,Hosts文件管理模块25将使用访问频率最低的网站域名和IP地址从Hosts文件中删除。
本发明实施例所提供的访问GAE托管网站的控制装置,通过先查本地Hosts文件,在找服务器提供的域名IP对应表,或直接找服务器查询目标网站IP地址的方式,保证客户端浏览器能够通过目标网站的域名解析到正确的IP地址,从而保证浏览器能够访问到GAE托管网站的正确IP地址,防止托管在GAE上的应用程序由于其对应的域名受到DNS污染,使用户无法访问或被绑架到其它的网站,避免为应用程序的提供者造成损失,也避免给用户造成不好的体验。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)或随机存储记忆体(Random Access Memory,RAM)等。
以上所揭露的仅为本发明一种较佳实施例而已,当然不能以此来限定本发明之权利范围,因此依本发明权利要求所作的等同变化,仍属本发明所涵盖的范围。