首页后端开发PHPPHP实现页面静态化、纯静态化及伪静态化

PHP实现页面静态化、纯静态化及伪静态化

时间2024-02-02 01:08:03发布访客分类PHP浏览734
导读:收集整理的这篇文章主要介绍了PHP实现页面静态化、纯静态化及伪静态化,觉得挺不错的,现在分享给大家,也给大家做个参考。概念PHP静态化分为:纯静态化 和 伪静态化;纯静态化又分为:局部静态化 和 完全静态化纯静态化:是把PHP生成的动态页面...
收集整理的这篇文章主要介绍了PHP实现页面静态化、纯静态化及伪静态化,觉得挺不错的,现在分享给大家,也给大家做个参考。

概念

PHP静态化分为:纯静态化 和 伪静态化;

纯静态化又分为:局部静态化 和 完全静态化

纯静态化:是把PHP生成的动态页面保存成静态的htML文件,用户访问该静态页面,而不是用户每一次访问都重新生成一张相同的网页,优点就是减小服务器开销,

局部静态化:是生成的静态文件中,有局部的数据还是通过ajax技术动态获取的;

完全静态化:即不存在动态获取数据的情况,所以内容都来自静态的html页面

伪静态化:apache服务器rewrITe配置

纯静态化的实现

利用php内置的ob函数实现页面的静态化,大概步骤如下:

?php ob_start();
    //开启缓存 ?>
    p>
    我是要生成的静态内容,也可以在该处链接数据库生成动态内容于此/p>
    ?php file_put_contents( 'index.html', ob_get_clean() );
    //把生成的静态内容保存到index.html文件,而不是输出到浏览器?>
    

触发系统生成纯静态化页面

方法:页面添加缓存时间;手动触发

页面添加缓存时间

?php$file_name = 'index.html';
    if(file_exists( $file_name ) &
    &
  filemtime( $file_name ) - time()  10 ){
    //如果文件是存在并且最后修改时间小于设定时间 10s    //filemtime( $file_name );
    //得到文件最后修改时间    //time();
    //当前时间    require_once( $file_name );
//引入文件}
else{
     ob_start( );
     ?>
    p>
    我是要生成的静态内容/p>
 ?phpfile_put_contents( $file_name,  ob_get_contents() )//输出到浏览器}
    

如果后台数据存在更细,定时刷新不能及时更改静态页面,怎么办?所有引入了手动触发的功能

Linux下的crontab定时扫描程序

*/5****php/data/static/index.php

php伪静态

Apache服务器rewrite配置

在httpd.conf文件中,找到

#注释:去掉前边的" # "开启rewrite服务,重启服务器生效
#LoadModule rewrite_module modules/mod_rewrite.so
#注释:http-vhosts.conf文件是虚拟域名配置的文件,开启改文件可以配置虚拟域名,一般默认是开启的
#Include conf/extra/httpd-vhosts.conf

rewrite伪静态配置

VirtualHost *:80>
        ServerAdmin webmaster@dummy-host.example.COM    DocumentRoot "c:/Apache24/docs/dummy-host.example.com"    ServerName dummy-host.example.com    ServerAlias www.dummy-host.example.com    ErrorLOG "logs/dummy-host.example.com-error.log"    CustomLog "logs/dummy-host.example.com-access.log" common    #配置规则如下所示    RewriteEngine on    rewriterule ^/vidio/([0-9]*).html$ /vidio.php?id=$1    /VirtualHost>
    

也可用.htacess文件,放在网站目录下,无需重启服务器。

更多php相关知识,请访问php教程!

以上就是PHP实现页面静态化、纯静态化及伪静态化的详细内容,更多请关注其它相关文章!

声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!


若转载请注明出处: PHP实现页面静态化、纯静态化及伪静态化
本文地址: https://pptw.com/jishu/596160.html
php利用session进行登录验证 php用逗号格式化数字的方法(代码示例)

游客 回复需填写必要信息