学习PHP静态化笔记

在慕课网上看了一个关于PHP实现页面静态化的课程,http://www.imooc.com/learn/330,写点笔记记录一下。


1、动态页面是php,jsp,asp页面,静态页面是html,htm,shtml页面。


2、动态页面地址和静态页面地址的区别。


3、PHP静态化分类:(1)纯静态--------局部纯静态(通过ajax和js实现)、全部纯静态

                                    (2)伪静态:将动态页面的地址转化为静态页面的地址,通过配置服务器实现


4、纯静态原理:(1)将内容直接写入html文件,使用file_put_contents()函数

                            (2)将缓冲区的内容写入html文件

                                      a. 打开缓冲区(在PHP配置文件中开启,或在脚本中使用ob_start()函数)

                                      b. 在脚本文件中输出内容,使用ob_get_contents()函数获取内容,写入html文件,最后清空缓冲区(脚本文件中输出的内容将不会输出,而是写入文件                                                了)


5、纯静态化的实现:

   (1)从数据库或缓存中读取数据,组装为需要使用的形式

    (2)在模板文件中使用组装好的数据

    (3)打开缓冲区,引入模板文件(在引入模板文件时,模板文件的内容将会进入缓冲区,此时的内容包含了数据和模板文件)

    (4)将缓冲区的内容写入静态文件


6、出发系统生成纯静态化页面的方案:

     (1) 在php文件中设置静态文件的有效时间,当时间超出时,重新生成静态化文件

     (2) 在页面上添加按钮,手动触发生成静态化文件

     (3) Linux系统的crontab命令,定时触发php文件,生成静态化文件


7、伪静态(实际访问的仍然是动态文件)方案:

(1)PHP处理伪静态

         a. 使用正则表达式匹配,当$_SERVER['pathInfo']符合特定的格式时,取出参数

         b. 使用参数获取数据,返回到页面

  (2)配置WEB服务器rewrite实现

         a. Apache服务器配置

            在vhost中设置RewriteRule,将特定的格式转成动态页面的格式,访问动态文件

            也可以开启在访问某文件或某路径时,如果文件不存在,才重写URL。或者无论是否存在,都重写URL。

         b. Nginx服务器配置

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值