php如何生成静态网页

php如何生成静态网页,第1张

静态页面加载速度快(什么是静态页面),利于搜索引擎蜘蛛抓取,所以很多朋友都想把动态页面生成静态页面,那么今天就来介绍下如何用php生成静态网页。 思路大致是这样的:

1设计一个静态页面的模板,需要填充内容的地方用一些符合或者参数代替(不能与其他代码重复),如下图(简图):

2用php读取数据库里的内容,将需要填充内容的符号用读取到的内容替换掉。比如模板是上图,则把<{title}>替换成网页标题,将<{content}>替换成网页内容。这是可以用php中的preg_replace函数进行替换。

3将替换后的内容保存为html或者htm文件。比如可以保存为news_1html,这样在浏览器里就可以访问这样的一个静态网页了。

通过以上三步就可以用php生成静态页面了,以上只是一个简单的思路,在实际生成静态页面的过程中可能会更加复杂,只要用心,多学习php中的函数,多思考就不会有问题难倒你。

利用模板。目前PHP的模板可以说是很多了,有功能强大的smarty,还有简单易用的smarttemplate等。它们每一种模板,都有一个获取输出内容的函数。我们生成静态页面的方法,就是利用了这个函数。用这个方法的优点是,代码比较清晰,可读性好。

这里我用smarty做例子,说明如何生成静态页:

<php

require("smarty/Smartyclassphp");

$t = new Smarty;

$t->assign("title","Hello World!");

$content = $t->fetch("templates/indexhtm");

//这里的 fetch() 就是获取输出内容的函数,现在$content变量里面,就是要显示的内容了

$fp = fopen("archives/2005/05/19/0001html", "w");

fwrite($fp, $content);

fclose($fp);

>

用>

一、静态化的优点:

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("matchhtml") && (time()-filemtime("matchhtml"))<300)

{

//如果存在对应的静态文件,则直接访问

require_once("matchhtml");

}else{

//这里用数组来仿真数据库 *** 作,现实一般都是 *** 作数据库得到对应数据

$student = array("huangxing","chenyuwei",'xufei','zhangjingwen','xuepei');

ob_start();

//载入模板

require_once("mubanphp");

file_put_contents("matchhtml",ob_get_clean());

require_once('matchhtml');

}

网站后台生成真实页面的html就是静态页,动态页没有页面只有一个模板页。

网站更新静态页需要重新生成才行,动态页则不需要重新生成,但是动态页每次访问一个页面都会访问数据库,造成数据拥堵,人多则进不去,静态页则不会。

以上就是关于php如何生成静态网页全部的内容,包括:php如何生成静态网页、dedecms 怎么生成静态页面、java抓取网页内容--生成静态页面 等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://www.54852.com/web/10155947.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-05
下一篇2023-05-05

发表评论

登录后才能评论

评论列表(0条)

    保存