广告
返回顶部
首页 > 资讯 > 后端开发 > PHP编程 >php页面静态化是什么意思
  • 794
分享到

php页面静态化是什么意思

php页面静态化 2019-07-31 15:07:18 794人浏览 无得
摘要

本教程操作环境:windows7系统、PHP7.1版、DELL G3电脑PHP 页面静态化的概念php静态化分为:纯静态化 和 伪静态化;纯静态化:是把PHP生成的动态页面保存成静态的html文件,用户访问该静态页面,而不是用户每一次访问都

教程操作环境:windows7系统、PHP7.1版、DELL G3电脑

PHP 页面静态化的概念

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

纯静态化:是把PHP生成的动态页面保存成静态的html文件,用户访问该静态页面,而不是用户每一次访问都重新生成一张相同的网页

优点就是减小服务器开销,

如果细分纯静态,那么可以分为“局部纯静态”、“全部纯静态”:

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

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

伪静态化:是指将动态页面的url地址转换成类似于静态页面的url地址的过程

伪静态化其实还是动态访问,其实质是动态生成数据,你访问的网址类似于"Http://yourhost,com/index/post/12",是一个静态地址,该地址多见于博客地址,但伪静态化中,你访问的网址实际上经过服务器解析,还是会解析成类似于"http://yourhost,com/?c=index&a=post&id=12"的地址,所以称之为伪静态化

伪静态的优点:美观;便于搜索引擎收录

纯静态化的实现

利用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() )//输出到浏览器
}

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

手动触发

  手动触发的大概样式就类似于优酷视频评论区,当有新评论时,会后一条屎黄屎黄的小提示框:“有新评论,点击更新”,也类似于app中的下滑刷新的机制,自己去寻找吧。。

除此之外还有Linux下的crontab定时扫描程序

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

局部静态化内容不做叙述

PHP伪静态

// 静态:http://yourhost.com/index.php/12/2.html
// 动态:http://yourhost.com/index.php?type=12&id=2
$pathinfo = $_SERVER['PATH_INFO'];
if( preg_match('/^\/(\d+)\/(\d+)/', $pathinfo,$path) ){
    $type = $path[1];
    $id = $path[2];
    echo 'type=',$type,'&id=',$id;//获得type 和 id 进一步处理
}else{
    //错误处理
    echo "err";
}

Apache服务器rewrite配置

在httpd.conf文件中,找到

#注释:去掉前边的" # "开启rewrite服务,重启服务器生效
#LoadModule rewrite_module modules/mod_rewrite.so

#注释:http-vhosts.conf文件是虚拟域名配置的文件,开启改文件可以配置虚拟域名,一般默认是开启的
#Include conf/extra/httpd-vhosts.conf

如果你不会配置虚拟域名,可以参考我的另外一篇文章:WAMPServer配置修改及问题汇总

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>

RewriteEngine其他配置规则以后会再添加

现在你访问http://yourhost.com/vidio/12.html时,相当于访问了http://yourhost.com/vidio.php?id=12

问题:配置完上面的内容后,又存在以下问题?如果项目目录下存在该静态页面时,到底是访问我们的静态页面还是访问我们伪静态的文件呢?

    经过测试我们发现,并不会访问静态页面,如果我们想访问我们的静态页面怎么办?

伪静态和静态页面冲突时解决办法:

    #完整的配置规则如下
    RewriteEngine on
    #添加以下两项,!-d  和  !-f  分别表示  目录 和 文件
    #当访问的伪静态和相应的静态目录和文件冲突时,访问静态页面
    RewriteCond %{DOCUMENT_ROOT}%{REQUEST_FILENAME} !-d
    RewriteCond %{DOCUMENT_ROOT}%{REQUEST_FILENAME} !-f
    RewriteRule ^/index/([0-9]*).html$ /index.php?id=$1

--结束END--

本文标题: php页面静态化是什么意思

本文链接: https://www.lsjlt.com/news/1512.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • php页面静态化是什么意思
    本教程操作环境:windows7系统、PHP7.1版、DELL G3电脑PHP 页面静态化的概念PHP静态化分为:纯静态化 和 伪静态化;纯静态化:是把PHP生成的动态页面保存成静态的html文件,用户访问该静态页面,而不是用户每一次访问都...
    99+
    2019-07-31
    php 页面静态化
  • php页面静态化指的是什么
    这篇“php页面静态化指的是什么”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“php页面静态化指的是什么”文章吧。php页面...
    99+
    2023-06-30
  • html静态化指的是什么意思
    这篇文章主要介绍html静态化指的是什么意思,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完! html静态化是指网页的代码都在页面中,不需要执行asp、ph...
    99+
    2022-10-19
    html
  • PHP中什么是静态以及静态属性和静态方法是什么意思
    本篇内容主要讲解“PHP中什么是静态以及静态属性和静态方法是什么意思”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“PHP中什么是静态以及静态属性和静态方法是什么意思”吧!静态是什么我们之前讲到,...
    99+
    2023-06-20
  • PHP页面静态化的优缺点是什么
    这篇文章主要介绍“PHP页面静态化的优缺点是什么”,在日常操作中,相信很多人在PHP页面静态化的优缺点是什么问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”PHP页面静态化的优缺点是什么”的疑惑有所帮助!接下来...
    99+
    2023-07-05
  • php伪静态是啥意思
    本文操作环境:windows10系统、php 7、thinkpad t480电脑。我们先来讲解下什么是伪静态。伪静态技术是指以html一类的静态页面形式展示,但其实是用动态脚本来处理。开启伪静态:需要的工具只有两样,首先就是需要..htac...
    99+
    2016-11-05
    php 伪静态
  • PHP网站页面怎么静态化
    这篇文章主要讲解了“PHP网站页面怎么静态化”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“PHP网站页面怎么静态化”吧!什么是PHP静态化PHP静态化的简单理解就是使网站生成页面以静态HTM...
    99+
    2023-06-17
  • dede建站的伪静态是什么意思
    dede建站的伪静态是通过对动态网页重写URL的方式来伪装动态网页的参数,如果设置伪静态可以更好迎合搜索引擎的抓取,又能动态更新网站内容,实现了高效运维管理,并且缩短了url长度,隐藏了文件的实际路径提高了安全性,也易于用户记忆和输入,但使...
    99+
    2022-10-08
    dede 伪静态 建站
  • PHP中怎么实现伪静态化页面
    PHP中怎么实现伪静态化页面,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。PHP实现伪静态化页面方法一:在你的程序初始化时使用如下代码:<php  ...
    99+
    2023-06-17
  • PHP如何实现HTML页面静态化
    这篇文章主要为大家展示了“PHP如何实现HTML页面静态化”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“PHP如何实现HTML页面静态化”这篇文章吧。 一般情...
    99+
    2022-10-19
    php html
  • php静态化指的是什么
    本篇内容主要讲解“php静态化指的是什么”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“php静态化指的是什么”吧!PHP静态化就是使网站生成页面以静态HTML的形式展现在访客面前;PHP静态化分...
    99+
    2023-07-04
  • 如何在PHP中实现静态页面动态化?
    随着互联网用户对于网页内容呈现的要求越来越高,动态页面技术已经成为了网页开发的标配。在一些较为简单的网站中,我们可以使用一些框架或者CMS系统来进行网站开发,实现快速开发并且轻松实现动态页面效果。不过一些小型的静态网站则需要手动实现动态化,...
    99+
    2023-05-23
    PHP缓存 PHP静态化 动态化页面
  • jspXCMS静态化页面怎么设置
    这篇文章主要介绍“jspXCMS静态化页面怎么设置”,在日常操作中,相信很多人在jspXCMS静态化页面怎么设置问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”jspXCMS静态化页面怎么设置”的疑惑有所帮助!...
    99+
    2023-06-26
  • Jspxcms页面静态化怎么设置
    本篇内容介绍了“Jspxcms页面静态化怎么设置”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!生成静态页是提高网站访问速度的办法之一。静态页...
    99+
    2023-06-26
  • PHP中多态性是什么意思
    在PHP中,多态性是指同一个操作作用于不同的类的实例,将产生不同的执行结果。也即不同类的对象收到相同的消息时,将得到不同的结果;不同的对象,收到同一消息将可以产生不同的结果,这种现象称为多态性。多态性允许每个对象以适合自身的方式去响应共同的...
    99+
    2023-05-14
    php
  • 伪静态网页与html静态网页区别是什么
    这篇文章将为大家详细讲解有关伪静态网页与html静态网页区别是什么,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。 什么是伪静态,伪静态感召 伪静态即是web自己是动静...
    99+
    2022-10-19
    html
  • php里面的echo是什么意思
    本文操作环境:Windows7系统、PHP7.1版、DELL G3电脑php里面的echo是什么意思?PHP里的ECHO是一种输出字符串的语法或函数,当后面直接跟随空格和字符串时是语法,如“echo 'php';”,函数使用...
    99+
    2018-02-19
    php echo
  • 页面h5和php是什么意思?(相关知识探讨)
    HTML5和PHP是Web开发中常用的两种技术,前者用于构建页面布局、样式和交互,后者用于处理服务器端的业务逻辑和数据存储。下面我们来深入探讨HTML5和PHP的相关知识。一、HTML5是什么?HTML5(Hypertext Markup ...
    99+
    2023-05-14
    H5 html5 php
  • php中多态指的是什么意思
    这篇文章主要介绍php中多态指的是什么意思,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!php是什么语言php,一个嵌套的缩写名称,是英文超级文本预处理语言(PHP:Hypertext Preprocessor)的缩...
    99+
    2023-06-15
  • php网页的布局是什么意思
    这篇文章主要为大家展示了“php网页的布局是什么意思”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“php网页的布局是什么意思”这篇文章吧。   一。 网页的布...
    99+
    2022-10-19
    php
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作