首页 > 后端开发 > 正文

php静态化框架 php实现静态化方法是什么

2023-08-27 19:01:51 | 我爱编程网

最近经常有小伙伴私信询问php静态化框架 php实现静态化方法是什么相关的问题,今天,我爱编程网小编整理了以下内容,希望可以对大家有所帮助。

php静态化框架 php实现静态化方法是什么

php如何实现网页静态

一、静态化的优点:
1有利于搜索引擎收录网站页面的信息:搜索引擎更喜欢静态的,更变于抓取,搜索引擎SEO排名会更容易提高。
2静态网页化网页稳定
3可以提高网页加载速度
4减轻服务器负担,浏览器不需要频发调用数据库。
5数据库出错不会影响正常访问
二、伪静态
PHP伪静态:是利用Apache mod_rewite实现url重写的方法
改写访问地址,能够通过URL的PATHINFO模式来改动它。让它看上去更像一个静态页面。从而有更大的几率被搜索引擎抓取和收录,仅是对搜索引擎比较友好,伪静态化
三、纯静态化
纯静态化,就是生成HTML文件的方式,我们须要开启PHP自带的缓存机制,即ob_start来开启缓存。而且在ob_start之前不能有不论什么输出,否则运行失败,然后我们用ob_get_contents函数来获取缓存中的内容,该函数会返回一个字符串。第三个函数就是ob_end_clean,它用来清空缓存中的内容而且关闭,成功返回True,失败返回False。
<?php
if(file_exists("match.html") && (time()-filemtime("match.html"))<300)
{
//如果存在对应的静态文件,则直接访问
require_once("match.html");
}else{
//这里用数组来仿真数据库操作,现实一般都是操作数据库得到对应数据
$student = array("huangxing","chenyuwei",'xufei','zhangjingwen','xuepei');
ob_start();
//载入模板
require_once("muban.php");
file_put_contents("match.html",ob_get_clean());
require_once('match.html');
}

php静态化框架 php实现静态化方法是什么我爱编程网

ThinkPHP3.2 的页面静态化功能的实现

(1)在根目录下的程序入口文件index.php中加下面这行:

define('HTML_PATH','./HTML/');//生成静态页面的文件位置  (nginx服务器报错时注释此行,默认地址为runtime目录平层的Html)

(2)在项目的配置文件config.php中进行如下配置:

'HTML_CACHE_ON'=>true,// 开启静态缓存

'HTML_CACHE_TIME'=>604800,// 全局静态缓存有效期(秒)(3600*24*7)

'HTML_FILE_SUFFIX'=>'.shtml',// 设置静态缓存文件后缀

'HTML_CACHE_RULES'=>array(// 定义静态缓存规则

// 定义格式1 数组方式

// 定义格式2 字符串方式

//后一个参数是静态缓存有效期,单位为秒。如果不定义,则会获取配置参数HTML_CACHE_TIME 的设置值,如果定义为0则表示永久缓存。

//{id} 表示取$_GET['id']

'CondVoucher:conGuid' =>array('{:controller}_{:action}/conGuid'),

(3)访问url生成缓存到html目录下查看缓存文件

参照手册: _3_2.html#html_cache

php静态化框架 php实现静态化方法是什么

php实现静态化方法是什么


php实现静态化的方法:1、改写访问地址,能够通过URL的PATHINFO模式来改动它;2、站点能够在用户访问站点之前就通过一定的程序来进行静态化。
php实现静态化的方法:
PHP站点开发过程中,因为搜索引擎对PHP页面搜鹿和html页面的收录有一定的区别,为了站点的推广或者SEO的须要,要对站点进行一定的静态化。静态化并非页面中没有动画等元素,而是指网页的html代码都在页面中,不须要再去执行PHP脚本等server端的语言,我们能够直接_问到的网页。这就是静态网页。
有一种方式是改写_问地址,能够通过URL的PATHINFO模式来改动它。让它看上去更像一个静态页面。从而有更大的几率被搜索引擎抓取和收录,仅是对搜索引擎比_友好,伪静态化。
第二种就是站点能够在用户_问站点之前就通过一定的程序来进行静态化。生成静态页面。当用户去_问该页面的时候。因为_问的是静态页面,因此,_问速度会比_问动态页面的速度快了非常多倍,前台的表现是页面载入速度变快,在后台的表现是降低了数据库的连接。降低了数据库的压力,唯一的缺点就是相对占的硬盘多一些,硬盘相对便宜的多。
纯静态化,就是生成HTML文件的方式,我们须要开启PHP自带的缓存机制,即ob_start来开启缓存。而且在ob_start之前不能有不论什么输出,否则运行失败,然后我们用ob_get_contents函数来获取缓存中的内容,该函数会返回一个字符串。第三个函数就是ob_end_clean,它用来清空缓存中的内容而且关闭,成功返回True,失败返回False。
<?php
//开启缓存
ob_start();
//第一步连接数据库
$conn = mysqli_connect("localhost","root","","bbs");
//第二步设置对应的字符编码
$setting = 'set names utf8';
mysqli_query($conn,$setting);
//第三步进行查询
$sql = 'SELECT * FROM user';
$result = mysqli_query($conn,$sql);
//第四步把查询结果转化为一个数组
$rows = mysqli_num_rows($result);
$sqldata = array();
for($i = 0;$i <$rows;$i ++){
$sqldata[] = mysqli_fetch_assoc($result);
}
//然后打印该信息
var_dump($sqldata);
//得到生成的html文件,下次_问就无需_问数据库了
$msg = ob_get_contents();
ob_end_clean();
//把输出内容放入一个html文件里
$f = fopen("static.html","w");
fwrite($f,$msg);
echo "静态化成功"; 目录下生成一个html文件
<pre class='xdebug-var-dump' dir='ltr'>
<b>array</b> <i>(size=6)</i>
0 <font color='#888a85'>=></font>
<b>array</b> <i>(size=4)</i>
'id' <font color='#888a85'>=></font> <small>string</small> <font color='#cc0000'>'1'</font> <i>(length=1)</i>
'level' <font color='#888a85'>=></font> <small>string</small> <font color='#cc0000'>'0'</font> <i>(length=1)</i>
'name' <font color='#888a85'>=></font> <small>string</small> <font color='#cc0000'>'辛星'</font> <i>(length=6)</i>
'pwd' <font color='#888a85'>=></font> <small>string</small> <font color='#cc0000'>'bd04fcc97578ce33ca5fb331f42bc375'</font> <i>(length=32)</i>
1 <font color='#888a85'>=></font>
<b>array</b> <i>(size=4)</i>
'id' <font color='#888a85'>=></font> <small>string</small> <font color='#cc0000'>'2'</font> <i>(length=1)</i>
'level' <font color='#888a85'>=></font> <small>string</small> <font color='#cc0000'>'1'</font> <i>(length=1)</i>
'name' <font color='#888a85'>=></font> <small>string</small> <font color='#cc0000'>'小倩'</font> <i>(length=6)</i>
'pwd' <font color='#888a85'>=></font> <small>string</small> <font color='#cc0000'>'61cb72858be523b9926ecc3d7da5d0c6'</font> <i>(length=32)</i>
2 <font color='#888a85'>=></font>
<b>array</b> <i>(size=4)</i>
'id' <font color='#888a85'>=></font> <small>string</small> <font color='#cc0000'>'3'</font> <i>(length=1)</i>
'level' <font color='#888a85'>=></font> <small>string</small> <font color='#cc0000'>'1'</font> <i>(length=1)</i>
'name' <font color='#888a85'>=></font> <small>string</small> <font color='#cc0000'>'小楠'</font> <i>(length=6)</i>
'pwd' <font color='#888a85'>=></font> <small>string</small> <font color='#cc0000'>'a3d2de7675556553a5f08e4c88d2c228'</font> <i>(length=32)</i>
3 <font color='#888a85'>=></font>
<b>array</b> <i>(size=4)</i>
'id' <font color='#888a85'>=></font> <small>string</small> <font color='#cc0000'>'4'</font> <i>(length=1)</i>
'level' <font color='#888a85'>=></font> <small>string</small> <font color='#cc0000'>'1'</font> <i>(length=1)</i>
'name' <font color='#888a85'>=></font> <small>string</small> <font color='#cc0000'>'刘强'</font> <i>(length=6)</i>
'pwd' <font color='#888a85'>=></font> <small>string</small> <font color='#cc0000'>'fcdb06a72af0516502e5fdccc9181ee0'</font> <i>(length=32)</i>
4 <font color='#888a85'>=></font>
<b>array</b> <i>(size=4)</i>
'id' <font color='#888a85'>=></font> <small>string</small> <font color='#cc0000'>'5'</font> <i>(length=1)</i>
'level' <font color='#888a85'>=></font> <small>string</small> <font color='#cc0000'>'1'</font> <i>(length=1)</i>
'name' <font color='#888a85'>=></font> <small>string</small> <font color='#cc0000'>'星哥'</font> <i>(length=6)</i>
'pwd' <font color='#888a85'>=></font> <small>string</small> <font color='#cc0000'>'866a6cafcf74ab3c2612a85626f1c706'</font> <i>(length=32)</i>
5 <font color='#888a85'>=></font>
<b>array</b> <i>(size=4)</i>
'id' <font color='#888a85'>=></font> <small>string</small> <font color='#cc0000'>'6'</font> <i>(length=1)</i>
'level' <font color='#888a85'>=></font> <small>string</small> <font color='#cc0000'>'1'</font> <i>(length=1)</i>
'name' <font color='#888a85'>=></font> <small>string</small> <font color='#cc0000'>'辛勇'</font> <i>(length=6)</i>
'pwd' <font color='#888a85'>=></font> <small>string</small> <font color='#cc0000'>'e93beb7663f3320eaa0157730d02dd0c'</font> <i>(length=32)</i>
</pre>相关学习推荐:php编程(视频)

以上就是我爱编程网小编整理的内容,想要了解更多相关资讯内容敬请关注我爱编程网。
与“php静态化框架 php实现静态化方法是什么”相关推荐
php静态框架 php实现静态化方法是什么
php静态框架 php实现静态化方法是什么

php实现静态化方法是什么php实现静态化的方法:1、改写访问地址,能够通过URL的PATHINFO模式来改动它;2、站点能够在用户访问站点之前就通过一定的程序来进行静态化。php实现静态化的方法:PHP站点开发过程中,因为搜索引擎对PHP页面搜鹿和html页面的收录有一定的区别,为了站点的推广或者SEO的须要,要对站点进行一定的静态化。静态化并非页面中没有动画等元素,而是指网页的

2023-09-01 14:41:18
PHP的ci框架伪静态 ThinkPHP怎么实现伪静态
PHP的ci框架伪静态 ThinkPHP怎么实现伪静态

ThinkPHP怎么实现伪静态1、实现伪静态方法:1)隐藏入口文件:_index.html2)结合使用URL路由:_route.html3)配置伪静态后缀名:HTML_FILE_SUFFIX=&gt;'';上面三个都用上,基本都OK了!当然,还可以通过服务器重写URL2、设置让地址栏不能访问文件夹:1)每个文件夹添加一个index.html空文件(因服务器默认的首

2023-09-28 00:50:53
php静态框架制作 php技术生成静态页面的实现
php静态框架制作 php技术生成静态页面的实现

php如何生成静态网页?静态页面加载速度快(什么是静态页面),利于搜索引擎蜘蛛抓取,所以很多朋友都想把动态页面生成静态页面,那么今天就来介绍下如何用php生成静态网页。思路大致是这样的:1.设计一个静态页面的模板,需要填充内容的地方用一些符合或者参数代替(不能与其他代码重复),如下图(简图):2.用php读取数据库里的内容,将需要填充内容的符号用读取到的内容替换掉。比如模板是上图

2023-09-12 15:32:44
php静态网站框架制作 PHP怎样实现网址伪静态
php静态网站框架制作 PHP怎样实现网址伪静态

php技术生成静态页面的实现我们先回顾一些基本的概念。一、PHP脚本与动态页面。PHP脚本是一种服务器端脚本程序,可通过嵌入等方法与HTML文件混合,也可以类,函数封装等形式,以模板的方式对用户请求进行处理。无论以何种方式,它的基本原理是这样的。由客户端提出请求,请求某一页面-----Web服务器引入指定相应脚本进行处理-----脚本被载入服务器-----由服务器指定的PHP解析器

2023-09-15 18:21:23
php生成静态框架函数 php在类中使用静态方法有几种方式
php生成静态框架函数 php在类中使用静态方法有几种方式

php在类中使用静态方法有几种方式php在类中使用静态方法的方式:1、使用self,代码如下&lt;?phpclassa{privatestaticfunctiontest(){echo'test';}publicfunctiontest1(){self::test();}}$ab=newa();$ab-&gt;test1();//结果test

2023-09-24 00:36:52
php伪静态框架 PHP伪静态
php伪静态框架 PHP伪静态

PHP怎样实现网址伪静态PHP实现网址伪静态的方法:1、使用函数【$_SERVER['PATH_INFO']】操作实现;2、配置【.htaccess】来,网站建设时使用【mod_rewrite】模块来实现伪静态。PHP实现网址伪静态的方法:1.根据$_SERVER['PATH_INFO']来操作实现。举个列子比如你的网站的地址是_new.php/look-id-1.shtml

2023-09-10 01:23:14
php框架静态还是动态类 PHP大型门户站是用静态好,还是伪静态好
php框架静态还是动态类 PHP大型门户站是用静态好,还是伪静态好

PHP开发用哪种框架PHP开发常用框架一、CI框架CI框架是一个简单快速的PHPMVC轻量级框架,它执行效率高,快速简洁,代码量少,适合中小型项目开发,也可以做大型项目,但扩展能力不是很好。优势:框架比较简单,适合入门开发,易学,上手快,静态化很容易,文档比较详细。缺点:由于框架较小,所以功能不完全,比如使用mongoDB就要自己实现接口,对数据库的操作不够安全(写入

2023-09-25 21:58:25
php生成静态框架 thinkphp3.1.2怎么生成静态
php生成静态框架 thinkphp3.1.2怎么生成静态

thinkphp3.1.2怎么生成静态可以使用php的ob缓存来实现静态页面的生成。比如:你原本要输出a.php页面的内容,但是这个是php的动态文件,是要经过处理的,因此,你在该文件的尾部(在业务都处理完了的地方),开始ob缓存(ob_start();),然后将缓存存入到一个变量php怎么生成html静态首页文件&lt;phpob_start();//此代码放在页面最前&

2023-09-07 04:20:44