CN109815432A - 一种全站静态化的方法和页面静态化的方法 - Google Patents

一种全站静态化的方法和页面静态化的方法 Download PDF

Info

Publication number
CN109815432A
CN109815432A CN201811602509.8A CN201811602509A CN109815432A CN 109815432 A CN109815432 A CN 109815432A CN 201811602509 A CN201811602509 A CN 201811602509A CN 109815432 A CN109815432 A CN 109815432A
Authority
CN
China
Prior art keywords
static
dynamic
server
file
page
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN201811602509.8A
Other languages
English (en)
Inventor
杨昕
邢海峰
苑明星
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Boao Beijing Vertical And Horizontal Network Technology Co Ltd
Original Assignee
Boao Beijing Vertical And Horizontal Network Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Boao Beijing Vertical And Horizontal Network Technology Co Ltd filed Critical Boao Beijing Vertical And Horizontal Network Technology Co Ltd
Priority to CN201811602509.8A priority Critical patent/CN109815432A/zh
Publication of CN109815432A publication Critical patent/CN109815432A/zh
Pending legal-status Critical Current

Links

Landscapes

  • Information Transfer Between Computers (AREA)

Abstract

本发明公开了一种全站静态化的方法和页面静态化的方法,包括以下步骤,缓存服务器接收用户终端发来的url请求,检查该url请求是否已被缓存;若是则直接将缓存结果返回给用户终端,否则执行下一步,缓存服务器保持用户终端的url请求的目标地址不变,而生成新的url请求传输到web服务器;web服务器接收新的url请求,并通过处理伪静态请求的方式,将新的url请求转换为实际动态请求,发送至服务器端脚本处理处理单元;web服务器接收对实际动态请求的响应结果并返回到缓存服务器进行缓存,将缓存的结果发送至用户终端。本发明不仅可以充分利用web服务器处理纯静态化内容高效的特点,提高静态化后网站的效率,还提高了动态网页静态化的效率。

Description

一种全站静态化的方法和页面静态化的方法
技术领域
本发明涉及一种全站静态化的方法和页面静态化的方法。
背景技术
随着网络的快速发展,web网页技术也在不断的推陈出新,web技术的发展大致经历了以下三个阶段:静态文档阶段、动态网页阶段和Web2.0网页阶段。静态文档阶段通过客户机端的Web浏览器,用户可以访问网络上各个Web站点,通过Web站点上的主页访问整个网站,但是采用静态页面方式建立起来的站点只能够简单的根据用户的请求传送现有页面,而无法实现各种动态的交互功能。即静态页面无法支持后台数据库、无法有效的对站点信息进行及时的更新、无法实现动态显示效果。而这些不足之处,促使Web技术进入了动态网页阶段。动态网页阶段在网络的客户端和服务端实现了动态和个性化的交流与互动。Web2.0网页阶段中,每个用户都可以在开放的网站上通过简单的浏览器操作而拥有他们自己的数据,人们可以更加方便的进行信息获取、发布、共享以及沟通交流和群组讨论等。
但是对于动态网页来说,存在一个致命的压力负载问题。当网站访问量达到一定数量级之后,网页的响应速度会急剧降低,大大影响最终的用户体验。所以对于大容量、高并发的网站(动态网页)来说,常常将动态网页的灵活性与静态网页的高并发结合起来,以满足对网站的大用户量访问要求,动态页面静态化方法成为热门技术。
现有技术方案中,全站静态化存在下面几个问题:(1)应用比较复杂,需要进行大量编码还需要对静态化后的内容进行存储管理。(2)静态化的过程在服务器端脚本程序中处理,所以整体效率不高。(3)对于以前生成的静态化页面的内容很难修改。(4)用户在访问所述静态化页面时,新的数据或页面修改无法生效。
发明内容
本发明提出一种全站静态化的方法和页面静态化的方法,该方法不仅可以充分利用web服务器处理纯静态化内容高效的特点,提高静态化后网站的效率,同时网页静态化的过程中只将需要静态化的动态内容做静态化处理,无需对网页中的静态内容也做静态化处理,提高了动态网页静态化的效率。
本发明的技术方案是这样实现的:
一种全站静态化的方法,包括以下步骤
步骤1:缓存服务器接收用户终端发来的url请求;
步骤2:所述缓存服务器检查所述用户终端发出的url请求是否已被缓存;如果已被缓存,则直接将缓存结果返回给用户终端,如果未被缓存,则执行步骤3;
步骤3:所述缓存服务器保持用户终端的url请求的目标地址不变,而生成新的url请求传输到web服务器;
步骤4:所述web服务器接收所述缓存服务器发送的新的url请求,并通过处理伪静态请求的方式,将新的url请求转换为实际动态请求,发送至服务器端脚本处理处理单元;
步骤5:所述web服务器接收服务器端脚本处理处理单元发送的经处理后得到的对所述实际动态请求的响应结果;
步骤6:所述web服务器将所述响应结果返回到所述缓存服务器进行缓存,并将缓存的结果发送至所述用户终端。
优选的,步骤4中通过处理伪静态请求的方式,将新的url请求转换为实际动态请求指的是通过所述web服务器自带的url重写规则将静态地址转化为动态地址。
优选的,步骤6中将所述响应结果返回到所述缓存服务器进行缓存指的是将新的url请求及配置的相关信息组合当作Key,md5编码哈希后保存在硬盘上的指定位置进行缓存。
优选的,所述缓存服务器定期对缓存文件进行自动删除。
优选的,所述缓存服务器为Nginx服务器。
一种页面静态化的方法,在全站静态化的过程中将动态页面内的动态内容进行静态化,具体包括以下步骤
(1)选取动态网页中需要静态化的动态内容;
(2)创建动态内容的模板文件;
(3)生成与模板文件对应的第一静态文件,并将第一静态文件保存到服务器指定文件夹中;
(4)判断服务器指定文件夹中是否存在第一静态文件;若否,返回执行步骤(2)
(5)生成动态网页的第二静态文件;
(6)采用嵌入指令将第一静态文件添加入动态网页的第二静态文件中。
优选的,步骤(1)中,从动态网页中选取需要静态化的动态内容,动态内容可以为动态网页中的一个或多个页面。
优选的,步骤(2)和(3)中,采用模板引擎来生成动态内容的第一静态文件。
优选的,步骤(3)中,从服务器数据库中获取模板标签位置相应的动态内容数据,将动态内容数据以字符串变量的形式存储,将字符串变量替换标签,编写第一静态文件,将字符串中的动态内容写入第一静态文件中,然后为第一静态文件命名,并将其保存到服务器指定的文件夹中,服务器指定文件夹为服务器存放网页静态文件的文件夹。
优选的,步骤(6)中,使用服务端嵌入指令SSI将第一静态文件添加入动态网页的第二静态文件中。
本发明的有益效果在于:
(1)利用缓存服务器的缓存功能进行缓存的管理,不需要开发人员自行处理缓存的存储工作,所以具有配置简单,易于管理的特点。
(2)由于缓存是在缓存服务器中实现,当用户请求命中缓存后可大大减少服务器处理的时间,降低真实web服务器的压力,提高服务器运行效率,提高负载能力。
(3)缓存服务器会定期对缓存的静态页面进行清理,动态页面修改也可以方便的进行更新。
(4)在动态网页动态内容静态化的过程中只将动态内容进行静态化,不需要对动态网页中的静态内容进行静态化,提高了动态网页静态化的效率。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明一种全站静态化的方法一个实施例的流程图;
图2为本发明一种页面静态化的方法一个实施例的流程图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
如图1所示,本发明提出了一种全站静态化的方法,包括以下步骤
步骤1:缓存服务器接收用户终端发来的url请求;
步骤2:缓存服务器检查用户终端发出的url请求是否已被缓存;如果已被缓存,则直接将缓存结果返回给用户终端,如果未被缓存,则执行步骤3;
步骤3:缓存服务器保持用户终端的url请求的目标地址不变,而生成新的url请求传输到web服务器;
步骤4:web服务器接收缓存服务器发送的新的url请求,并通过处理伪静态请求的方式,将新的url请求转换为实际动态请求,发送至服务器端脚本处理处理单元;
步骤5:web服务器接收服务器端脚本处理处理单元发送的经处理后得到的对实际动态请求的响应结果;
步骤6:web服务器将响应结果返回到缓存服务器进行缓存,并将缓存的结果发送至用户终端。
步骤4中通过处理伪静态请求的方式,将新的url请求转换为实际动态请求指的是通过web服务器自带的url重写规则将静态地址转化为动态地址。
步骤6中将响应结果返回到缓存服务器进行缓存指的是将新的url请求及配置的相关信息组合当作Key,md5编码哈希后保存在硬盘上的指定位置进行缓存。
缓存服务器定期对缓存文件进行自动删除。
缓存服务器为Nginx服务器。利用Nginx服务器本身带有的缓存功能对通过web服务器返回的伪静态化内容进行缓存。Nginx服务器是一个高性能的HTTP和反向代理服务器,具备IMAP/POP3和SMTP服务器功能。Nginx最大的特点是对高并发的支持和高效的负载均衡,在高并发的需求场景下,是Apache服务器不错的替代品。Nginx与其他web服务器相比较有内存占用少,稳定性高的优势,并发能力强,并且有丰富的模块库,易于配置。利用Nginx的proxy_cache相关指令集进行配置缓存服务功能,连接真实web服务器并进行伪静态化配置,web服务器包含服务器端脚本程序。
如图2所示,本发明还提出了一种页面静态化的方法,在全站静态化的过程中将动态页面内的动态内容进行静态化,不需要对动态网页中的静态内容进行静态化,具体包括以下步骤
(1)选取动态网页中需要静态化的动态内容;
(2)创建动态内容的模板文件;
(3)生成与模板文件对应的第一静态文件,并将第一静态文件保存到服务器指定文件夹中;
(4)判断服务器指定文件夹中是否存在第一静态文件;若否,返回执行步骤(2)
(5)生成动态网页的第二静态文件;
(6)采用嵌入指令将第一静态文件添加入动态网页的第二静态文件中。
步骤(1)中,从动态网页中选取需要静态化的动态内容,动态内容可以为动态网页中的一个或多个页面。
步骤(2)和(3)中,采用模板引擎来生成动态内容的第一静态文件。优选的模板引擎为Freemarker,Freemarker是一个用Java语言编写的模板引擎,Freemarker模板引擎可以实现业务逻辑代码和用户界面代码的分离,使得开发人员和设计人员可以独立工作,还可以实现代码单元共享即代码重用,提高了动态网页静态化的效率。该步骤中,根据动态网页中需要静态化的动态内容的具体业务创建相应的模板文件,模板文件中的标签确定了动态内容在模板文件的位置。
步骤(3)中,从服务器数据库中获取模板标签位置相应的动态内容数据,将动态内容数据以字符串变量的形式存储,将字符串变量替换标签,编写第一静态文件,将字符串中的动态内容写入第一静态文件中,然后为第一静态文件命名,并将其保存到服务器指定的文件夹中,服务器指定文件夹为服务器存放网页静态文件的文件夹。
步骤(6)中,使用服务端嵌入指令SSI将第一静态文件添加入动态网页的第二静态文件中。只需要用一个简单的指令将第一文件添加入动态网页的第二静态文件中,不需要将动态内容的第一静态文件的具体内容添加入动态网页的第二静态文件中,简化了添加过程,提高了将第一静态文件添加入动态网页的第二静态文件中的效率,进而也提高了动态网页静态化的效率。
本发明提供的静态化页面方法的优选流程,将动态网页中需要静态化的动态内容先生成第一静态文件,在编写动态网页的第二静态文件时将第一静态文件添加进去,进而使得在静态化动态网页时,只需要静态化需要的动态部分,不需要对网页中的静态内容进行静态化,提高了动态网页静态化的效率。另一方面,由于将动态内容生成静态文件与创建静态模板相分离,可以使开发人员和页面设计人员独立和并行工作,提高了动态网页静态化的效率。
本发明的有益效果在于:
(1)利用缓存服务器的缓存功能进行缓存的管理,不需要开发人员自行处理缓存的存储工作,所以具有配置简单,易于管理的特点。
(2)由于缓存是在缓存服务器中实现,当用户请求命中缓存后可大大减少服务器处理的时间,降低真实web服务器的压力,提高服务器运行效率,提高负载能力。
(3)缓存服务器会定期对缓存的静态页面进行清理,动态页面修改也可以方便的进行更新。
(4)在动态网页动态内容静态化的过程中只将动态内容进行静态化,不需要对动态网页中的静态内容进行静态化,提高了动态网页静态化的效率。上述技术方案公开了本发明的改进点,未详细公开的技术内容,可由本领域技术人员通过现有技术实现。
以上仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (10)

1.一种全站静态化的方法,其特征在于:包括以下步骤
步骤1:缓存服务器接收用户终端发来的url请求;
步骤2:所述缓存服务器检查所述用户终端发出的url请求是否已被缓存;如果已被缓存,则直接将缓存结果返回给用户终端,如果未被缓存,则执行步骤3;
步骤3:所述缓存服务器保持用户终端的url请求的目标地址不变,而生成新的url请求传输到web服务器;
步骤4:所述web服务器接收所述缓存服务器发送的新的url请求,并通过处理伪静态请求的方式,将新的url请求转换为实际动态请求,发送至服务器端脚本处理处理单元;
步骤5:所述web服务器接收服务器端脚本处理处理单元发送的经处理后得到的对所述实际动态请求的响应结果;
步骤6:所述web服务器将所述响应结果返回到所述缓存服务器进行缓存,并将缓存的结果发送至所述用户终端。
2.根据权利要求1所述的全站静态化的方法,其特征在于:步骤4中通过处理伪静态请求的方式,将新的url请求转换为实际动态请求指的是通过所述web服务器自带的url重写规则将静态地址转化为动态地址。
3.根据权利要求1所述的全站静态化的方法,其特征在于:步骤6中将所述响应结果返回到所述缓存服务器进行缓存指的是将新的url请求及配置的相关信息组合当作Key,md5编码哈希后保存在硬盘上的指定位置进行缓存。
4.根据权利要求1或3所述的全站静态化的方法,其特征在于:所述缓存服务器定期对缓存文件进行自动删除。
5.根据权利要求1所述的全站静态化的方法,其特征在于:所述缓存服务器为Nginx服务器。
6.一种页面静态化的方法,其特征在于,在全站静态化的过程中将动态页面内的动态内容进行静态化,具体包括以下步骤
(1)选取动态网页中需要静态化的动态内容;
(2)创建动态内容的模板文件;
(3)生成与模板文件对应的第一静态文件,并将第一静态文件保存到服务器指定文件夹中;
(4)判断服务器指定文件夹中是否存在第一静态文件;若否,返回执行步骤(2)
(5)生成动态网页的第二静态文件;
(6)采用嵌入指令将第一静态文件添加入动态网页的第二静态文件中。
7.根据权利要求6所述的页面静态化的方法,其特征在于,步骤(1)中,从动态网页中选取需要静态化的动态内容,动态内容可以为动态网页中的一个或多个页面。
8.根据权利要求6所述的页面静态化的方法,其特征在于,步骤(2)和(3)中,采用模板引擎来生成动态内容的第一静态文件。
9.根据权利要求6所述的页面静态化的方法,其特征在于,步骤(3)中,从服务器数据库中获取模板标签位置相应的动态内容数据,将动态内容数据以字符串变量的形式存储,将字符串变量替换标签,编写第一静态文件,将字符串中的动态内容写入第一静态文件中,然后为第一静态文件命名,并将其保存到服务器指定的文件夹中,服务器指定文件夹为服务器存放网页静态文件的文件夹。
10.根据权利要求6所述的页面静态化的方法,其特征在于,步骤(6)中,使用服务端嵌入指令SSI将第一静态文件添加入动态网页的第二静态文件中。
CN201811602509.8A 2018-12-26 2018-12-26 一种全站静态化的方法和页面静态化的方法 Pending CN109815432A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811602509.8A CN109815432A (zh) 2018-12-26 2018-12-26 一种全站静态化的方法和页面静态化的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811602509.8A CN109815432A (zh) 2018-12-26 2018-12-26 一种全站静态化的方法和页面静态化的方法

Publications (1)

Publication Number Publication Date
CN109815432A true CN109815432A (zh) 2019-05-28

Family

ID=66602539

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811602509.8A Pending CN109815432A (zh) 2018-12-26 2018-12-26 一种全站静态化的方法和页面静态化的方法

Country Status (1)

Country Link
CN (1) CN109815432A (zh)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110196957A (zh) * 2019-06-03 2019-09-03 广州凡科互联网科技股份有限公司 一种连续式静态资源更新方法
CN110516190A (zh) * 2019-08-30 2019-11-29 深圳点猫科技有限公司 生成静态网页的方法与装置
CN110516185A (zh) * 2019-08-09 2019-11-29 济南浪潮数据技术有限公司 动态网站的处理方法及装置
CN111368237A (zh) * 2020-03-09 2020-07-03 无锡开云信息技术有限公司 一种分布式网站缓存静态化方法、服务器和系统
CN112003788A (zh) * 2020-07-23 2020-11-27 北京达佳互联信息技术有限公司 数据请求发送方法、装置、设备及介质
CN112398736A (zh) * 2020-10-20 2021-02-23 南京欣网互联网络科技有限公司 一种根据业务参数实现服务路由的动态选择的方法及系统
CN112632440A (zh) * 2020-12-18 2021-04-09 西安博达软件股份有限公司 基于水印特征规则串的教师个人主页静态资源生成方法

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103064932A (zh) * 2012-12-24 2013-04-24 乐视网信息技术(北京)股份有限公司 一种静态化页面的处理系统和方法
US20140365863A1 (en) * 2013-06-06 2014-12-11 Microsoft Corporation Multi-part and single response image protocol
CN104317874A (zh) * 2014-10-20 2015-01-28 北京锐安科技有限公司 一种动态网页静态化的方法和装置
US20170302755A1 (en) * 2012-08-06 2017-10-19 Paypal, Inc. Systems and methods for caching http post requests and responses
CN107305576A (zh) * 2016-04-25 2017-10-31 北京京东尚科信息技术有限公司 页面的伪静态处理方法和装置
CN107590145A (zh) * 2016-07-06 2018-01-16 北京神州泰岳软件股份有限公司 一种页面静态资源的处理方法和装置

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20170302755A1 (en) * 2012-08-06 2017-10-19 Paypal, Inc. Systems and methods for caching http post requests and responses
CN103064932A (zh) * 2012-12-24 2013-04-24 乐视网信息技术(北京)股份有限公司 一种静态化页面的处理系统和方法
US20140365863A1 (en) * 2013-06-06 2014-12-11 Microsoft Corporation Multi-part and single response image protocol
CN104317874A (zh) * 2014-10-20 2015-01-28 北京锐安科技有限公司 一种动态网页静态化的方法和装置
CN107305576A (zh) * 2016-04-25 2017-10-31 北京京东尚科信息技术有限公司 页面的伪静态处理方法和装置
CN107590145A (zh) * 2016-07-06 2018-01-16 北京神州泰岳软件股份有限公司 一种页面静态资源的处理方法和装置

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110196957A (zh) * 2019-06-03 2019-09-03 广州凡科互联网科技股份有限公司 一种连续式静态资源更新方法
CN110516185A (zh) * 2019-08-09 2019-11-29 济南浪潮数据技术有限公司 动态网站的处理方法及装置
CN110516185B (zh) * 2019-08-09 2022-04-22 济南浪潮数据技术有限公司 动态网站的处理方法及装置
CN110516190A (zh) * 2019-08-30 2019-11-29 深圳点猫科技有限公司 生成静态网页的方法与装置
CN111368237A (zh) * 2020-03-09 2020-07-03 无锡开云信息技术有限公司 一种分布式网站缓存静态化方法、服务器和系统
CN111368237B (zh) * 2020-03-09 2024-03-19 无锡开云信息技术有限公司 一种分布式网站缓存静态化方法、服务器和系统
CN112003788A (zh) * 2020-07-23 2020-11-27 北京达佳互联信息技术有限公司 数据请求发送方法、装置、设备及介质
CN112003788B (zh) * 2020-07-23 2021-12-14 北京达佳互联信息技术有限公司 数据请求发送方法、装置、设备及介质
CN112398736A (zh) * 2020-10-20 2021-02-23 南京欣网互联网络科技有限公司 一种根据业务参数实现服务路由的动态选择的方法及系统
CN112632440A (zh) * 2020-12-18 2021-04-09 西安博达软件股份有限公司 基于水印特征规则串的教师个人主页静态资源生成方法
CN112632440B (zh) * 2020-12-18 2023-01-24 西安博达软件股份有限公司 基于水印特征规则串的教师个人主页静态资源生成方法

Similar Documents

Publication Publication Date Title
CN109815432A (zh) 一种全站静态化的方法和页面静态化的方法
CN102902805B (zh) 一种页面访问方法和装置
US7877511B1 (en) Method and apparatus for adaptive services networking
CN104539681B (zh) 分布式gis加速系统和gis服务的处理方法
CN101147145B (zh) 基于嵌入式web的管理方法
CN101583072B (zh) 一种用于实现Mobile Internet的中间件产品及其方法
CN110149423A (zh) 域名处理方法、装置、可读存储介质及电子设备
CN104317874B (zh) 一种动态网页静态化的方法和装置
CN103383687B (zh) 一种页面处理方法和装置
CN102193926B (zh) 一种基于文稿在线自动保存的文稿管理方法和系统
CN106933614A (zh) 一种单页面应用升级方法及装置
JP2000509531A (ja) カスタムWebサイトを動的に作成し管理するためのシステム
CN102227121A (zh) 基于机器学习的分布式缓存策略自适应切换方法及系统
CN103067433A (zh) 一种分布式存储系统的数据迁移方法、设备和系统
CN106657314A (zh) 跨数据中心数据同步系统及方法
CN103825919B (zh) 一种缓存数据资源的方法、装置及系统
CN1234086C (zh) 用于高速缓存文件信息的系统和方法
CN103347089A (zh) 一种对网站动态资源和静态资源分离加速的方法及装置
CN109151824A (zh) 一种基于5g架构的图书馆数据服务扩展系统及方法
CN106817388A (zh) 虚拟机、宿主机获取数据的方法、装置及访问数据的系统
CN104994139A (zh) 一种对高并发网络请求发快速响应的系统
CN104765592A (zh) 一种面向网页采集任务的插件管理方法及其装置
CN102523106A (zh) 基于FlexRIA技术的视频网站用户行为分析系统
CN103067479A (zh) 一种基于文件冷热的网盘同步方法及系统
CN106357539A (zh) 一种数据获取方法和设备

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication

Application publication date: 20190528

RJ01 Rejection of invention patent application after publication