什么是真静态???

纯静态:

   将PHP程序生成静态的HTML文件,保存到服务器的磁盘中。 原理: 在用户访问PHP程序时,首先检测静态的HTML文件是否存在,如果存在直接输出静态文件,如果静态文件不存在,查询数据库,生成静态文件,并输出。 优势: 减少PHP程序编译和对数据库的查询。 数据缓冲区: 数据缓冲区是用户前端用来存储、操纵数据的对象。 通过输出控制函数实现纯静态化。


真静态优缺点:


优点

html静态页 

        1、减少服务器对数据响应的负荷

        2、加载不用调动数据库,响应速度快

        3、便于优化引擎

缺点:

        1、维护不方便,每次都要手动生成

        2、空间占用比较大

        3、生成文件多了,服务器对htnl文件的响应负担也比较重


  我们知道使用PHP进行网站开发,一般执行结果直接输出到游览器,为了使用PHP生成静态页面,就需要使用输出控制函数控制缓存区,以便获取缓存区的内容,然后再输出到静态HTML页面文件中以实现网站静态化。

  php生成静态页面的思路:

   首先开启缓存,然后输出了HTML美容(你也可以通过include将Html内容以文件形式包含进来),之后获取缓存中的内容,清空缓存后通过PHP文件读取写函数将缓存内容写入到静态HTNL页面中。PHP文件读写教程?

获得输出的缓存内容以生成静态HTMl页面的过程需要三个函数:

   ob_stsrt();

        ob_get_conntents();

        ob_end_clean();

知识点:


1ob_start()函数一般主要是用来开启缓存,注意使用ob_start之前不能有任何输出,如空格、字符等。



2ob_get_contents函数主要用来获取缓存中的内容以字符串形式返回,注意此函数必须在ob_end_clean函数之前调用,否则获取不到缓存内容。

录入fopen,fwrite,fclose(file_put_contents)


3ob_end_clean函数主要是清空缓存中的内容并关闭缓存,成功则返回True,失败则返回False

ob_end_flush: 发送内部缓冲区的内容到浏览器,并且关闭输出缓冲区

函数格式:void ob_end_flush(void)

说明:这个函数发送输出缓冲区的内容(如果有的话)

PHP输出控制函数(Output Control)有很多应用,今后将陆续展开。

至此,使用PHP生成静态HTML页面以实现网站静态化的方法就介绍完了,根据实际情况和需求你可以选择不同的静态化方法。


 

什么是真静态???


如果是局部缓存怎么办?

答:采用ajax方式获取动态的数据。

 什么是真静态???