ThinkPHP3.2 的页面静态化功能的实现

ThinkPHP3.2 的页面静态化功能的实现,第1张

(1)在根目录下的程序入口文件index.php中加下面这行:

define('HTML_PATH','./HTML/')//生成静态页面的文件位置  (nginx服务器报错时注释此行,默认地址为runtime目录平层的Html)

(2)在项目的配置文件config.php中进行如下配置:

'HTML_CACHE_ON'=>true,// 开启静态缓存

'HTML_CACHE_TIME'=>604800,// 全局静态缓存有效期(秒)(3600*24*7)

'HTML_FILE_SUFFIX'=>'.shtml',// 设置静态缓存文件后缀

'HTML_CACHE_RULES'=>array(// 定义静态缓存规则

// 定义格式1 数组方式

// 定义格式2 字符串方式

//后一个参数是静态缓存有效期,单位为秒。如果不定义,则会获取配置参数HTML_CACHE_TIME 的设置值,如果定义为0则表示永久缓存。

//{id} 表示取$_GET['id']

'CondVoucher:conGuid'=>array('{:controller}_{:action}/conGuid'),

(3)访问url生成缓存到html目录下查看缓存文件

参照手册: http://document.thinkphp.cn/manual_3_2.html#html_cache

随着互联网的不断发展,搜索引擎已经是用户获得信息最有效的途径。如此一条可以获得流量的途径自然不能忽略,因此很多人都开始对网站进行优化,让网站在搜索引擎中获得良好的排名。

所谓网站SEO,就是对网站代码、内容、结构、以及页面静态化进行相应的优化,让网站页面被搜索引擎大量的收录,从而让网站内容大量的曝光,吸引大量的用户关注。

网站页面静态化对于网站优化有着重要的作用,它可以提高程序性能。现在有很多大型网站页面看上去都很复杂,但再打开速度方面却并不慢,除了其它必要因素外,网站页面静态化也是重要的因素之一。

它先于用户获取资源或数据库,进而通过静态化处理生成静态页面,从而让用户都来访问这个页面,而静态化处理的页面本身的访问速度就快,因此程序性能会有很大的提升。

总之,静态化页面不仅可以提升访问速度,同时也有利于提升用户体验。在后台体现访问脱离数据库,减轻了数据库的访问压力。

虽然静态化可以提升程序性能,但是它并不是提升性能的根本原因,就像电脑一样,只有高端cup、显卡以及内存是远远不够的,还要看电脑整体的性能。很多时候都是SEO人员的原因,导致程序性能不佳,所以要量力而行,以项目本身性能为基础,其它优化方法为辅,最终最终提升整个应用程序的性能。

方法一:使用现成的插件,比如:ISAPI_Rewrite、IIS Rewrite、Apache

HTTP服务器的mod_rewrite等,它们都是基于正则表达式解析器开发的重写引擎。它们的使用方法查看它们自带的帮助即可。

方法二:自己写的代码实现动态网页静态化,方法也有好几种:

1、创建FSO对象,利用此对象将所需的内容动态创建到文件中生成HTML页面;

2、利用模板技术,将模板中特殊代码的值替换为从表单或是数据库字段中接受过来的值 生成HTML文件;

3、使用Server.Transfer转换技术,

方法三:使用HttpWebRequest请求客户端的方式,获取返回资源,生成静态页面。一般这样只需要获取网页内容即可,其它资源可放置在服务器上,自动加载。(注:此方法缺点明显,需要大量更改匹配URL,建议慎用)

方法四:在asp中有IhttpModule接口。Ihttpmodule可以简单理解为一个可以在执行像.aspx,或者mvc中control/action前,添加我们自定义的 *** 作的东西。

我们只需要编写这么一个HttpModule就可以了,当用户第一次请求asp处理时,我们可以在ihttpmodule中拦截到这个请求,然后获取到这次请求应该返回的html代码,然后我们返回这些html给用户,并保存刚才我们获取到的html到文件内,当用户下次请求时,我们只需要直接返回我们已经保存的html文件即可


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/yw/12005463.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-20
下一篇2023-05-20

发表评论

登录后才能评论

评论列表(0条)

    保存