一种静态化页面的处理系统和方法

文档序号:6385197阅读:576来源:国知局
专利名称:一种静态化页面的处理系统和方法
技术领域
本发明涉及web页面处理技术,尤其涉及一种静态化页面的处理系统和方法。
背景技术
静态化是解决减轻网站压力,提高网站访问速度的常用方案。目前主要的静态化方法是在开发中通过编码对需要静态化的部分进行处理,静态化的过程发生在服务器端脚本程序中。在网站中,访问者看到的页面基本上是静态页面。页面静态化能够使访问速度较快,有利于搜索引擎收录。目前主流的静态化主要有两种第一种是通过程序将动态页面抓取并保存为静态页面,这样的页面实际存在于服务器的硬盘中;第二种是通过WEB服务器的URL Rewrite的方式,他的原理是通过web服务器内部模块按一定规则将外部的URL请求转化为内部的文件地址,也就是把外部请求的静态地址转化为实际的动态页面地址,而静态页面实际是不存在的。这两种方法都达到了实现URL静态化的效果,但是也各有各自的特点。将动态页面转化为实际存在的静态页面这种方法,由于静态页面的存在,少了动态解析过程,所以提高了页面的访问速度和稳定性,使得优化效果非常明显。所以这种方法被广泛采用。但是它的局限性同样存在。对于大型网站而言,这种方法将带来不可忽视的问题。首先,由于生成的文件数量较多,存储需要考虑文件、文件夹的数量问题和磁盘空间容量的问题;其次,页面维护的复杂性和大工作量,及带来的页面维护及时性问题,需要一整套站点更新制度。而URL Rewrite方式特点同样鲜明,由于是服务器内部解析的地址,所以内容是实时更新的,也不存在文件管理和硬件问题。在服务器级URL Rewrite重写技术并不影响页面的执行速度。但是URL Rewrite的门滥比较高,国内虚拟主机大多不支持,而且虚拟主机是目录级的URL Rewrite,通过遍历目录读物URL转发规则的方式将大大降低页面的执行速度。现有的静态化方法应用比较复杂,需要进行大量编码还需要对静态化后的内容进行存储管理,并且由于静态化的过程在服务器端脚本程序中处理,所以整体效率不高。

发明内容
针对上述缺陷,本发明的目的在于设计一种方便搭建的web系统静态化解决方案,充分利用web服务器处理纯静态化内容高效的特点,提高静态化后网站的效率。为此,本发明首先提供一种静态化页面处理系统,包括web缓存服务器、web服务器、用户终端,其特征在于所述web缓存服务器是Nginx服务器;所述web缓存服务器用于接收用户终端发来的url请求,并检查所述url请求是否已被缓存;如果已被缓存,则直接将缓存结果返回给用户,如果未被缓存,则保持用户的url请求的目标地址不变,而生成新的url请求传到所述web服务器。
进一步,该系统还包括一服务器端脚本处理;web服务器接收web缓存服务器发送的url请求后,通过处理伪静态请求的方式,将所述url请求转换为实际动态请求;并web服务器将所述动态请求发送至所述服务器端脚本处理单元。所述伪静态请求的方式为通过web服务器自带的rewrite规则将静态地址转化为动态地址。更进一步,所述web服务器接收服务器端脚本处理处理单元发送的经处理后得到的结果,将所述经处理后得到的结果返回到所述web缓存服务器;所述web缓存服务器对所述经处理后得到的结果进行缓存,并将缓存的结果发送至用户终端。更为优选地,对所述经处理后得到的结果进行缓存是将url请求及配置的相关信息组合当作Key,用md5编码哈希后保存在硬盘上的指定位置;所述web缓存服务器对缓存过期后的文件进行自动删除。此外,本发明还提供一种静态化页面处理方法,包括以下步骤
步骤100、web缓存服务器接收用户终端发来的url请求。步骤200、web缓存服务器检查用户发出的url请求是否已被缓存;如果已被缓存,则直接将缓存结果返回给用户,如果未被缓存,则执行步骤300 ;
步骤300、web缓存服务器保持用户的url请求的目标地址不变,而生成新的url请求传到web服务器,
其中,所述web缓存服务器是Nginx服务器。进一步,该方法还包括
步骤400、web服务器接收web缓存服务器发送的url请求,并通过处理伪静态请求的方式,将所述url请求转换为实际动态请求;所述伪静态请求的方式为通过web服务器自带的rewrite规则将静态地址转化为动态地址。步骤500、web服务器将所述动态请求发送至服务器端脚本处理处理单元。以及,步骤600、web服务器接收服务器端脚本处理处理单元发送的经处理后得到的结果;所述经处理后得到的结果,是对所述动态请求的响应结果。步骤700、web服务器将所述经处理后得到的结果返回到所述web缓存服务器。非限制性地,该方法还包括步骤800、web缓存服务器对所述经处理后得到的结果进行缓存,并将缓存的结果发送至用户终端。优选地,所述对所述经处理后得到的结果进行缓存,是将url请求及配置的相关信息组合当作Key,用md5编码哈希后保存在硬盘上的指定位置。本发明提供的技术方案可以利用web缓存服务器的缓存功能进行缓存的管理,不需要开发人员自行处理缓存的存储工作,所以具有配置简单,易于管理的特点。并且由于缓存是在web缓存服务器中实现,当用户请求命中缓存后可大大减少服务器处理的时间,降低真实web服务器的压力,提高服务器运行效率,提高负载能力。


图1为本发明静态化页面处理系统的示意 图2为本发明静态化页面处理方法流程 图3为本发明静态化页面处理方法的数据流向图。
具体实施例方式为了使发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施方式,对本发明进一步详细说明。应当理解所描述的具体实施方式
仅仅用以解释本发明,并不用于限定本发明。如图1所示,本发明的第一实施方式中,非限制性地展示了一种静态化页面处理系统,包括用户终端l、web缓存服务器2、web服务器3,所述web缓存服务器用于接收用户终端发来的url请求,并检查所述url请求是否已被缓存;如果已被缓存,则直接将缓存结果返回给用户,如果未被缓存,则保持用户的url请求的目标地址不变,而生成新的url请求传到所述web服务器。更为优选得实施方式中,所述web缓存服务器是Nginx服务器;利用Nginx服务器本身带有的缓存功能对通过web服务器返回的伪静态化内容进行缓存。Nginx服务器是一个高性能的HTTP和反向代理服务器,具备IMAP/P0P3和SMTP服务器功能。Nginx最大的特点是对高并发的支持和高效的负载均衡,在高并发的需求场景下,是Apache服务器不错的替代品。Nginx与其他web服务器相比较有内存占用少,稳定性高的优势,并发能力强,并且有丰富的模块库,易于配置。进一步,该系统还包括一服务器端脚本处理;web服务器接收web缓存服务器发送的url请求后,通过处理伪静态请求的方式,将所述url请求转换为实际动态请求;并web服务器将所述动态请求发送至所述服务器端脚本处理单元。所述伪静态请求的方式为通过web服务器自带的rewrite规则将静态地址转化为动态地址。更进一步,所述web服务器接收服务器端脚本处理处理单元发送的经处理后得到的结果,将所述经处理后得到的结果返回到所述web缓存服务器;所述web缓存服务器对所述经处理后得到的结果进行缓存,并将缓存的结果发送至用户终端。更为优选地,对所述经处理后得到的结果进行缓存是将url请求及配置的相关信息组合当作Key,用md5编码哈希后保存在硬盘上的指定位置;所述web缓存服务器对缓存过期后的文件进行自动删除。本发明的第二实施方式中,展示了一种静态化页面处理方法,如图2所示,包括以下步骤
步骤100、web缓存服务器接收用户终端发来的url请求;
步骤200、web缓存服务器检查用户发出的url请求是否已被缓存;如果已被缓存,则直接将缓存结果返回给用户,如果未被缓存,则执行步骤300。步骤300、web缓存服务器保持用户的url请求的目标地址不变,而生成新的url请求传到web服务器。步骤400、web服务器接收web缓存服务器发送的url请求,并通过处理伪静态请求的方式,将所述url请求转换为实际动态请求。步骤500、web服务器将所述动态请求发送至服务器端脚本处理处理单元。所述伪静态请求的方式为通过web服务器自带的rewrite规则将静态地址转化为动态地址。步骤600、web服务器接收服务器端脚本处理处理单元发送的经处理后得到的结果。所述经处理后得到的结果,是对所述动态请求的响应结果。步骤700、web服务器将所述经处理后得到的结果返回到所述web缓存服务器。步骤800、web缓存服务器对所述经处理后得到的结果进行缓存,并将缓存的结果发送至用户终端。对所述经处理后得到的结果进行缓存是将url请求及配置的相关信息组合当作Key,用md5编码哈希后保存在硬盘上的指定位置。配置中有对过期时间的设置,缓存过期后会自动删除。本发明的实施方式中,所提到的系统和方法优选使用Nginx服务器作为前端web缓存服务器,利用Nginx的proxy_cache相关指令集进行配置缓存服务功能,连接真实web服务器并进行伪静态化配置,web服务器包含服务器端脚本程序。为了更进一步说明本发明的第二实施方式,参见图3,其描绘了本发明提供的网站页面静态化的具体实现,主要包括以下步骤
步骤I 01、 用户(终端)向系统发出u r I请求
U 到前端web缓存服务器,Nginx服务器检查当前请求是否已被缓存。步骤102、如果缓存存在则直接将缓存结果html 返回给用户,如果没有有效缓存,则在保持url请求的目标地址不变的条件下生成url请求L々传到真实web服务器上。

步骤103、真实web服务器接收url请求;.2」,并通过处理伪静态请求的方式,例如
通过web服务器自带的rewrite规则将静态地址转化为动态地址,转换为实际动态请求*3)交由服务器端脚本程序处理。步骤104、将处理后得到的结果4返回给web服务器,结果4是动态请求4的响应结果,web服务器再将结果;的内容通过处理结果3返回到作为前端web缓存服务器的Nginx服务,结果是请求3的响应结果。步骤105、利用Nginx的web缓存功能对结果进行缓存并将html (■-返回给用户,
html .C:是请求的响应结果。缓存是将url请求及配置的相关信息组合当作Key,用md5
编码哈希后保存在硬盘上的指定位置。配置中有对过期时间的设置,缓存过期后会自动删除。本发明提供的技术方案可以利用web缓存服务器的缓存功能进行缓存的管理,不需要开发人员自行处理缓存的存储工作,所以具有配置简单,易于管理的特点。并且由于缓存存在于web缓存服务器中,当用户请求命中缓存后可大大减少服务器处理的时间,降低真实web服务器的压力,提高服务器运行效率,提高负载能力。可以认为,本发明和许多其呈现出的优势能够通过上述的说明书得以理解,在不偏离公开的主题或没有失去其所有物质优势的前提下,实现组件在形式上、结构上和排列上的各种变化是显而易见的。本发明的说明形式仅仅是示例性的,所附权利要求的目的包括保护这些变化。
权利要求
1.一种静态化页面处理系统,包括web缓存服务器、web服务器、用户终端,其特征在于 所述web缓存服务器是Nginx服务器; 所述web缓存服务器用于接收用户终端发来的url请求,并检查所述url请求是否已被缓存;如果已被缓存,则直接将缓存结果返回给用户,如果未被缓存,则保持用户的url请求的目标地址不变,而生成新的url请求传到所述web服务器。
2.如权利要求1所述的静态化页面处理系统,其特征在于 还包括一服务器端脚本处理; web服务器接收web缓存服务器发送的url请求后,通过处理伪静态请求的方式,将所述url请求转换为实际动态请求;并将所述动态请求发送至所述服务器端脚本处理单元进行处理。
3.如权利要求2所述的静态化页面处理系统,其特征在于处理伪静态请求的方式为web服务器根据设定的rewrite规则将静态地址转化为动态地址。
4.如权利要求3所述的静态化页面处理系统,其特征在于 所述web服务器将所述动态请求发送至所述服务器端脚本处理单元进行处理后,接收服务器端脚本处理单元发送的经处理后得到的结果,并将所述经处理后得到的结果转发到所述web缓存服务器; 所述web缓存服务器接收并缓存所述经处理后得到的结果,并将缓存的结果发送至用户终端。
5.如权利要求4所述的静态化页面处理系统,其特征在于 对所述经处理后得到的结果进行缓存是将url请求及配置的相关信息组合当作Key,用md5编码哈希后保存在硬盘上的指定位置; 所述web缓存服务器对缓存过期后的文件进行自动删除。
6.一种静态化页面处理方法,包括以下步骤 步骤100、web缓存服务器接收用户终端发来的url请求; 步骤200、web缓存服务器检查用户发出的url请求是否已被缓存;如果已被缓存,则直接将缓存结果返回给用户,如果未被缓存,则执行步骤300 ; 步骤300、web缓存服务器保持用户的url请求的目标地址不变,而生成新的url请求传到web服务器, 其中,所述web缓存服务器是Nginx服务器。
7.如权利要求6所述的静态化页面处理方法,其特征在于,还包括 步骤400、web服务器接收web缓存服务器发送的url请求,并通过处理伪静态请求的方式,将所述url请求转换为实际动态请求;所述伪静态请求的方式为通过web服务器自带的rewrite规则将静态地址转化为动态地址; 步骤500、web服务器将所述动态请求发送至服务器端脚本处理处理单元。
8.如权利要求7所述的静态化页面处理方法,其特征在于 步骤600、web服务器接收服务器端脚本处理处理单元发送的经处理后得到的结果;所述经处理后得到的结果,是对所述动态请求的响应结果; 步骤700、web服务器将所述经处理后得到的结果返回到所述web缓存服务器。
9.如权利要求8所述的静态化页面处理方法,其特征在于,还包括 步骤800、web缓存服务器对所述经处理后得到的结果进行缓存,并将缓存的结果发送至用户终端。
10.如权利要求9所述的静态化页面处理方法,其特征在于,还包括 所述对所述经处理后得到的结果进行缓存,是将url请求及配置的相关信息组合当作Key,用md5编码哈希后保存在硬盘上的指定位置。
全文摘要
本发明提供一种静态化页面处理系统和方法,通过web缓存服务器接收用户终端发来的url请求,并检查用户发出的url请求是否已被缓存;如果已被缓存,直接将缓存结果返回给用户,如果未被缓存,保持用户的url请求的目标地址不变并生成新的url请求传到web服务器,web服务器将该url请求转换为实际动态请求;服务器端脚本处理处理单元经处理后返回web服务器,web服务器将结果返回到所述web缓存服务器,web缓存服务器对所述经处理后得到的结果进行缓存,并将缓存的结果发送至用户终端。本发明的技术方案利用web缓存服务器的缓存功能进行缓存的管理,配置简单,易于管理,并可减少服务器处理的时间,降低真实web服务器的压力,提高服务器运行效率。
文档编号G06F17/30GK103064932SQ20121056494
公开日2013年4月24日 申请日期2012年12月24日 优先权日2012年12月24日
发明者张喆浩, 金宗锐 申请人:乐视网信息技术(北京)股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1