一种对WEB站点进行翻译的方法及装置与流程

文档序号:12597383阅读:533来源:国知局
一种对WEB站点进行翻译的方法及装置与流程

本发明涉及计算机网络技术领域,尤其是涉及一种对WEB站点进行翻译的方法及装置。



背景技术:

如今,我们由于工作和生活的需要经常浏览外文网站,可是满屏的外文阅读起来比较费劲。在这种情况下,需要对外文WEB站点的网页内容进行翻译。比如对某个英文网站的WEB界面进行汉化,以便以中文为母语的操作员能快速上手进行操作。

现有技术中对WEB站点进行翻译的方法主要有如下两种:

1.通过浏览器插件或浏览器书签方式,大致实现步骤为:

(1)将额外的javascript代码嵌入到原始页面;

(2)实时把显示的内容取出来,异步发送到翻译接口;

(3)得到翻译接口返回的内容后,替换原来的内容。

2.通过本地程序,大致实现步骤为:

(1)启动一个本地代理程序,用户通过程序提供的端口访问原页面;

(2)本地代理程序拦截到访问的原页面,对其中内容进行替换后返回。

然而,现有技术存在一些缺点。方案一程序简单,较为轻量,但是由于需要在页面中查找元素,对于一些动态添加的内容获取和替换比较困难。嵌入的额外的逻辑也容易影响原来页面的交互逻辑并且影响访问速度,同时获取翻译内容的过程也会额外消耗带宽,并且用户在使用时需要做一些额外操作,使用不方便。方案二也需要用户进行 额外的操作,如安装软件和配置。并且如果需要支持各个终端访问,开发量很大,维护及更新也困难。

由上述可知,现有技术的方案会影响WEB站点的原来页面逻辑、兼容性和访问速度,并且需要额外配置从而造成用户使用不便。

因此,需要一种能在不修改外文WEB站点代码的情况下对外文站点的网页进行精确翻译的方法和装置。



技术实现要素:

有鉴于此,本发明提供一种对WEB站点进行翻译的方法及装置,该方法和装置能够将本地化翻译过程对用户透明化,既能使用户在使用的时候感觉不到页面进行了翻译,也不知道翻译前的内容是什么,同时不影响WEB站点的页面逻辑、兼容性和访问速度。

为实现上述目的,根据本发明的一个方面,提供了一种对WEB站点进行翻译的方法。

本发明的一种对WEB站点进行翻译的方法包括:客户端向反向代理服务器发送对WEB站点进行翻译的请求;所述反向代理服务器根据预先配置的定位规则对所述请求进行解析,并对所述WEB站点的内容进行翻译,然后将所翻译的内容作为响应内容发送给客户端;客户端将接收到的所述响应内容进行呈现。

可选地,所述反向代理服务器通过旁路部署或串联部署的方式架设在WEB站点和用户之间。

可选地,所述反向代理服务器根据预先配置的定位规则对所述请求进行解析进一步包括:所述反向代理服务器根据预先配置的定位规则判断所述请求是针对本地文件还是所述WEB站点的文件;如果所述 请求针对本地文件,则将要请求的目录重定向到所述反向代理服务器本地的对应目录;如果所述请求针对所述WEB站点的文件,则:所述反向代理服务器向所述WEB站点发送获取页面内容的请求,所述WEB站点处理所接收到的请求并将响应内容发送给所述反向代理服务器。

可选地,对所述WEB站点的内容进行翻译的步骤进一步包括:如果所述请求针对本地文件,则直接读取所述反向代理服务器本地的对应目录所对应的文件内容;如果所述请求针对所述WEB站点的文件,则:根据预先配置的替换规则对所述WEB站点的响应内容进行替换,并对所述请求的HTTP响应头进行修改。

可选地,所述进行替换的步骤还包括以下中的至少一个:替换页面的字符串;替换页面的meta标签;以及增加额外的CSS代码。

根据本发明的另一方面,提供了一种对WEB站点进行翻译的装置。

本发明的一种对WEB站点进行翻译的装置包括:客户端和反向代理服务器,其中,所述客户端,用于向反向代理服务器发送对WEB站点进行翻译的请求,并且将接收到的响应内容进行呈现;以及所述反向代理服务器,用于根据预先配置的定位规则对所述请求进行解析,并对所述WEB站点的内容进行翻译,然后将所翻译的内容作为所述响应内容发送给所述客户端。

可选地,所述反向代理服务器通过旁路部署或串联部署的方式架设在WEB站点和用户之间。

可选地,所述反向代理服务器进一步用于:根据预先配置的定位规则判断所述请求是针对本地文件还是所述WEB站点的文件;如果所述请求针对本地文件,则将要请求的目录重定向到所述反向代理服务 器本地的对应目录;如果所述请求针对所述WEB站点的文件,则:所述反向代理服务器向所述WEB站点发送获取页面内容的请求,所述WEB站点处理所接收到的请求并将响应内容发送给所述反向代理服务器。

可选地,所述反向代理服务器进一步用于:如果所述请求针对本地文件,则直接读取所述反向代理服务器本地的对应目录所对应的文件内容;如果所述请求针对所述WEB站点的文件,则:根据预先配置的替换规则对所述WEB站点的响应内容进行替换,并对所述请求的HTTP响应头进行修改。

可选地,所述反向代理服务器还用于以下中的至少一个:替换页面的字符串;替换页面的meta标签;以及增加额外的CSS代码。

根据本发明的技术方案,使用反向代理服务器对WEB站点进行翻译,可以串联部署或旁路部署在WEB站点和用户之间,部署简单,且用户无需额外配置,使用方便。反向代理服务器既能接收请求数据,进行处理并发送到目标服务器,也可以对WEB站点响应的数据进行处理,最终返回给客户端,在使用的时候既感觉不到页面进行了翻译,也不知道翻译前的内容是什么,从而达到整个翻译过程对用户透明。同时,还可将静态资源且需要翻译的网页内容保存到本地,通过降低了向WEB服务器的请求数从而降低了WEB服务器的负载。对于动态生成且需要翻译的网页内容会根据替换规则进行翻译替换,从而使翻译结果更为准确。

综上所述,本发明根据反向代理服务器的定位规则和替换规则对用户请求进行优化处理,可使客户端的开销降到最小,从而实现翻译过程对用户透明,且不影响页面逻辑、兼容性和访问速度。

附图说明

附图用于更好地理解本发明,不构成对本发明的不当限定。其中:

图1是根据本发明实施例的一种WEB站点进行翻译的装置的示意图;

图2是根据本发明实施例的反向代理服务器的操作示意图;

图3是根据本发明实施例的反向代理服务器旁路部署的示意图;

图4是根据本发明实施例的反向代理服务器串联部署的示意图;

图5是根据本发明实施例的一种对WEB站点进行翻译的方法的主要步骤示意图;

图6是根据本发明实施例的一种对WEB站点进行翻译的方法的详细步骤流程图;

图7是根据本发明一个实施例的对WEB站点进行翻译的方法的时序图;

图8是根据本发明另一个实施例的对WEB站点进行翻译的方法的时序图。

具体实施方式

以下结合附图对本发明的示范性实施例做出说明,其中包括本发明实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本发明的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。

本发明提供的一种对WEB站点进行翻译的装置,包括客户端和反向代理服务器,其中:客户端用于向反向代理服务器发送对WEB站点进行翻译的请求,并且将接收到的响应内容进行呈现;反向代理服务器用于根据预先配置的定位规则对所述请求进行解析,并对所述WEB站点的内容进行翻译,然后将所翻译的内容作为所述响应内容发送给所述客户端。

在本发明的实施例中,反向代理服务器可以通过旁路部署或串联 部署的方式架设在WEB站点和用户之间。

反向代理服务器进一步用于根据预先配置的定位规则判断该请求是针对本地文件还是WEB站点的文件;如果该请求针对本地文件,则将要请求的目录重定向到反向代理服务器本地的对应目录;如果该请求针对WEB站点的文件,则:反向代理服务器向WEB站点发送获取页面内容的请求,WEB站点处理所接收到的请求并将响应内容发送给反向代理服务器。

反向代理服务器进一步用于如果该请求针对本地文件,则直接读取反向代理服务器本地的对应目录所对应的文件内容;如果该请求针对WEB站点的文件,则:根据预先配置的替换规则对WEB站点的响应内容进行替换,并对该请求的HTTP响应头进行修改。

反向代理服务器还用于以下中的至少一个:替换页面的字符串;替换页面的meta标签;以及增加额外的CSS代码。

根据以上的技术方案,以下结合附图对本发明实施例的一种WEB站点进行翻译的装置进行介绍。

图1是根据本发明实施例的一种WEB站点进行翻译的装置的示意图。如图1所示,反向代理服务器作为一个中间设备,架设在WEB站点和用户之间(图中省略了中间路由器和交换机等网络设备)。当WEB站点的某个页面对请求进行响应时,反向代理服务器能根据预先配置的规则文件,将WEB站点的响应内容正确翻译为对应的中文并响应给客户端,所述客户端设备可以是显示器、终端机或手机等设备。而这个过程对用户和WEB站点都是完全透明的。

图2是根据本发明实施例的反向代理服务器的操作示意图。反向代理服务器的反向代理功能,使其可以接收请求数据,处理并发送到 目标服务器;同时,WEB站点响应的数据也被反向代理服务器进行处理,最终返回给客户端。如果用户请求的页面在反向代理服务器上有缓存的话,会直接将缓存内容发送给用户。如果没有缓存则反向代理服务器会先向WEB服务器发出请求,取回数据,本地缓存后再发送给用户。这种方式通过降低了向WEB服务器的请求数,从而降低了WEB服务器的负载。所述反向代理服务器可以是nginx或者apache等WEB服务器。

本发明所述的反向代理服务器相当于一个远程反向代理,不仅充当了简单反向代理的角色,同时还对响应的内容进行修改,从而实现翻译的功能。

在本发明实施例的反向代理服务器中,可通过预先设置客户端访问地址或端口的方式来使用户选择访问翻译后的站点或原始站点,也可以通过预先设置浏览器的网络代理或修改PAC脚本的方式来配置浏览器访问某个站点时是否经过反向代理服务器。下面结合附图对实施例中的反向代理服务器功能实现方式进行介绍。

图3是根据本发明实施例的反向代理服务器旁路部署的示意图。如图3所示,以预先配置客户端访问地址的方式来使用户选择访问翻译后的站点或原始站点为例。例如用户所请求访问的WEB站点的地址为:“http://192.168.1.200”,本实施例中反向代理服务器通过旁路部署方式连接到WEB站点所在的交换机上。当用户请求页面时,会出现一个页面或窗口供用户选择是访问原始页面还是翻译后的页面,用户通过访问反向代理服务器所设置的翻译后的网页地址“http(s)://192.168.1.201”即可访问翻译后的页面;而如果用户需要访问原始的页面则可选择访问“http://192.168.1.200”。

图4是根据本发明实施例的反向代理服务器串联部署的示意图。如图4所示,以预先配置客户端访问端口的方式来使用户选择访问翻 译后的站点或原始站点为例。例如用户所请求访问的WEB站点的地址为:“http://192.168.1.200”,本实施例中反向代理服务器通过串联部署方式连接到WEB站点所在的交换机上。当用户请求页面时,会出现一个页面或窗口供用户选择是访问原始页面还是翻译后的页面,用户通过访问反向代理服务器所设置的翻译后的访问端口8080即可访问翻译后的页面;而如果用户需要访问原始的页面则可选择访问默认端口80。

本发明的反向代理服务器还可以包括一个配置管理界面,在反向代理服务器启动之前,可以通过该配置管理界面进行参数及规则的配置,例如:配置WEB站点的地址和服务器本地的服务端口、定位规则、以及替换规则等,以便反向代理服务器可以更加高效、准确的处理用户请求。

另外,本发明还提供了一种对WEB站点进行翻译的方法。图5是根据本发明实施例的一种对WEB站点进行翻译的方法的主要步骤示意图。由图5可知,本发明实施例的一种对WEB站点进行翻译的方法主要包括如下的步骤S51至步骤S53。

步骤S51:客户端向反向代理服务器发送对WEB站点进行翻译的请求。反向代理服务器可以选用Nginx或Apache来实现。

步骤S52:所述反向代理服务器根据预先配置的定位规则对所述请求进行解析,并对所述WEB站点的内容进行翻译,然后将所翻译的内容作为响应内容发送给客户端。

本发明的反向代理服务器能接收客户端所发送的请求数据,并对其进行处理后发送到目标服务器(WEB站点);同时,接收目标服务器(WEB站点)响应的数据并进行处理,然后返回给客户端。本领域的技术人员可以理解,本发明的反向代理服务器不仅充当了反向代理 的角色,同时还对响应的内容进行了修改,从而实现翻译的功能。

本发明的反向代理服务器可以通过旁路部署或串联部署的方式架设在WEB站点和用户之间。优选地,反向代理服务器还可配备一个可输入的接口设备,例如配置管理界面,通过对WEB站点地址或本地服务端口的相关配置,或者通过浏览器网络代理或PAC脚本配置的方式,使用户可以选择是查看WEB站点的原始内容还是查看翻译后的内容。

当反向代理服务器接收到客户端浏览器发送过来的翻译请求时,会根据预先配置的定位规则对所述请求进行解析,解析过程如下:

1.反向代理服务器根据预先配置的定位规则判断所述请求是针对本地文件还是所述WEB站点的文件;

2.如果该请求针对本地文件,则将要请求的目录重定向到反向代理服务器本地的对应目录;

3.如果该请求针对WEB站点的文件,则:反向代理服务器向该WEB站点发送获取页面内容的请求,该WEB站点处理所接收到的请求并将响应内容发送给反向代理服务器。

所述解析过程中对请求的判断根据定位规则来进行,主要是将静态资源且需要翻译(例如一个静态的HTML文本文件或JS文件)的网页地址重定向到本地对应目录,将动态生成且需要翻译的网页地址进行反向代理,向该WEB站点发送获取页面内容的请求,并对响应内容进行处理。

解析完成后,反向代理服务器会根据解析的结果对WEB站点的内容进行翻译,过程如下:

1.如果所述请求针对本地文件,则直接读取反向代理服务器本地的对应目录所对应的文件内容;

2.如果所述请求针对WEB站点的文件,则:根据预先配置的替换规则对该WEB站点的响应内容进行替换,并对该请求的HTTP响应 头进行修改。

在对请求的WEB站点的响应内容进行替换时,可以包括:替换页面的字符串、替换页面的meta标签、以及增加额外的CSS代码等,以生成翻译后的完整的WEB站点内容作为响应内容。

步骤S53:客户端将接收到的所述响应内容进行呈现。

由上述的步骤S51至步骤S53可以看出,本发明使用反向代理服务器对WEB站点进行翻译,可以串联部署或旁路部署在WEB站点和用户之间,部署简单,且用户无需额外配置,使用方便。反向代理服务器既能接收请求数据,进行处理并发送到目标服务器,也可以对WEB站点响应的数据进行处理,最终返回给客户端,用户在使用的时候既感觉不到页面进行了翻译,也不知道翻译前的内容是什么,从而达到整个翻译过程对用户透明。同时,还可将静态资源且需要翻译的网页内容保存到本地,通过降低了向WEB服务器的请求数从而降低了WEB服务器的负载。对于动态生成且需要翻译的网页内容会根据替换规则进行翻译替换,从而使翻译结果更为准确。

综上,本发明根据反向代理服务器的定位规则和替换规则对用户请求进行优化处理,可使客户端的开销降到最小,从而实现翻译过程对用户透明,且不影响页面逻辑、兼容性和访问速度。

以下结合图6、图7和图8对本发明的实施过程进行详细的描述。图6是根据本发明实施例的一种对WEB站点进行翻译的方法的详细步骤流程图。图7是根据本发明一个实施例的对WEB站点进行翻译的方法的时序图。图8是根据本发明另一个实施例的对WEB站点进行翻译的方法的时序图。

如图6所示,当客户端浏览器请求某个页面时,客户端会发送 HTTP请求(步骤S21)。之后,根据预先配置的定位规则文件,反向代理服务器对该请求进行解析(步骤S22),例如可以对该请求的访问路径(URL)进行正则匹配,以判断该请求是否需要请求WEB站点(步骤S23)。

如图7所示的实施例中,该请求内容是动态生成且需要翻译的网页,即该请求需要经过反向代理请求WEB站点,则向目标服务器WEB站点发送获取页面内容的请求(步骤S24)。WEB站点对该请求进行处理并响应,然后将响应内容返回给反向代理服务器。之后,反向代理服务器接收WEB站点的响应内容并进行翻译作为响应内容(步骤S25)。在对WEB站点的响应内容进行翻译时,会根据预先配置的替换规则对响应内容进行替换,并对该请求的HTTP响应头进行修改,以生成替换后的响应内容。例如:可以通过对页面的字符串、meta标签等进行正则替换,也可增加额外的CSS代码等,以确保页面的兼容性,保证页面的显示;同时,对该请求的HTTP响应头进行修改,以避免每次代理时都要进行TCP连接,从而保证反向代理服务器对WEB站点和用户都是透明的。

如图8所示的实施例中,该请求内容是静态资源且需要翻译的网页,例如是一个静态的HTML文件或JS文件,此时反向代理服务器上已有相应的缓存,即该请求无需请求WEB站点,则反向代理服务器会将该请求的URL重定向本地目录(步骤S26),并按目录响应对应的文件内容作为响应内容(步骤S27)。

最后,反向代理服务器将步骤S25和步骤S27中所生成的响应内容发送给客户端,客户端接收响应内容并进行呈现(步骤S28)。

由上述实施过程可以看出,本发明针对特定的页面和内容进行正则匹配翻译,翻译结果会非常准确,用户在使用的时候既感觉不到页面进行了翻译,也不知道翻译前的内容是什么,从而达到整个翻译过 程对用户透明。并且,对于已有缓存数据的页面,会直接将缓存内容发送给用户,通过降低了向WEB服务器的请求数,从而降低了WEB服务器的负载。

从以上描述可以看出,本发明根据反向代理服务器的定位规则和替换规则对用户请求进行优化处理,可使客户端的开销降到最小,从而实现翻译过程对用户透明,且不影响页面逻辑、兼容性和访问速度。

上述具体实施方式,并不构成对本发明保护范围的限制。本领域技术人员应该明白的是,取决于设计要求和其他因素,可以发生各种各样的修改、组合、子组合和替代。任何在本发明的精神和原则之内所作的修改、等同替换和改进等,均应包含在本发明保护范围之内。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1