PHP实现页面静态化、纯静态化及伪静态化-php教程

资源魔 23 0

概念

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>
 <?php
file_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@du妹妹y-host.example.com
    DocumentRoot "c:/Apache24/docs/du妹妹y-host.example.com"
    ServerName du妹妹y-host.example.com
    ServerAlias www.du妹妹y-host.example.com
    ErrorLog "logs/du妹妹y-host.example.com-error.log"
    CustomLog "logs/du妹妹y-host.example.com-access.log" co妹妹on
    #设置装备摆设规定以下所示
    RewriteEngine on
    RewriteRule ^/vidio/([0-9]*).html$ /vidio.php?id=$1
    
</VirtualHost>

也可用.htacess文件,放正在网站目次下,无需重启效劳器。

更多php相干常识,请拜访php教程!

以上就是PHP完成页面动态化、纯动态化及伪动态化的具体内容,更多请存眷资源魔其它相干文章!

标签: php php开发教程 php开发资料 php开发自学

抱歉,评论功能暂时关闭!