社区
基础编程
帖子详情
各位对定时产生静态html有何妙法?
foxmx
2004-04-16 10:57:08
如题..........
...全文
42
15
打赏
收藏
各位对定时产生静态html有何妙法?
如题..........
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
15 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
gaofaq
2004-04-17
打赏
举报
回复
<?php
/*
Class : Lcache
Author : L0ading <Loadingao@msn.com>
2004.04.03
Usage :
$sample = new Lcache();
echo "hello";
$sample->out();
*/
class Lcache {
var $bufferFileName;
var $en;
var $content;
function Lcache($LimitTime="600") {
$this->bufferFileName = basename($_SERVER['PHP_SELF'],".php").".buf";
ob_start();
if (!file_exists($this->bufferFileName) || (int)date(time()-@filemtime($this->bufferFileName))>$LimitTime) {
$this->en = true;
} else {
$this->en = false;
$this->readBuf();
}
}
function readBuf() {
$fp = fopen($this->bufferFileName,"r");
$this->content = fread($fp,filesize($this->bufferFileName));
}
function get() {
$this->content = ob_get_contents();
ob_clean();
}
function bufferTo() {
$fp = fopen($this->bufferFileName,"w");
fputs($fp,$this->content);
fclose($fp);
}
function out() {
$this->get();
if ($this->en) {
$this->bufferTo();
}
echo $this->content;
}
}
?>
xylegend
2004-04-17
打赏
举报
回复
up
hahawen
2004-04-17
打赏
举报
回复
最好是在用户第一次访问的时候生成静态页面,后台的计划任务只要定时删除静态文件就行了。
countstars
2004-04-17
打赏
举报
回复
为什么要那么做呢?
为什么不在你更新的时候才刷新缓存呢?
foxmx
2004-04-17
打赏
举报
回复
我在学校的服务器上放了一个测试页,大家不妨去试试看...
http://xgb.newgxu.cn/test2.php
另外,欢迎csdn友发表别的看法...大家互相学习嘛.......嘻嘻...
foxmx
2004-04-17
打赏
举报
回复
gaofaq(老高)的做法不错,
phanx(饭扫光)的办法也很好.
hahawen(变态的大龄青年)的方法对服务器有一定开销,不是很好.以前我们做新闻系统的时候就是这么做.
我的方法和老高的差不多:
<?php
error_reporting(E_ALL & ~E_NOTICE);
/////////////////////////////////////////////////////
//*********判断缓存中的文件是否过期****************//
//***$fn:文件名***$expire:时间间隔数**************//
////////////////////////////////////////////////////
function isTimeOut($fn,$expire){
$tag = 1;
if (is_file($fn)){
$ftime = filemtime($fn);//文件创建时间
$ctime = time(); //当前时间
if ($ctime - $ftime < $expire){
$tag = 0;
}
}
return $tag;
}
$filename = 'index.html';
//如果文件没有过期则读取缓存中的内容
if (!isTimeOut($filename,60)){
readfile($filename);
exit;
}
//否则使用缓存输出文件
else{
ob_start();
include('createIndex.php'); //创建index.html
$content=ob_get_contents(); //得到缓冲区的内容
$fp=fopen($filename,'w'); //打开文件
fwrite($fp,$content); //写入信息
fclose($fp); //关闭文件
}
?>
cookiecookiecookie
2004-04-17
打赏
举报
回复
为了减轻服务器的负担,可以把经常需要更换的页面用javascript中document.write
写然后保存为js文件
可以定期查询数据库获得最新的文章信息后直接修改js文件
phanx
2004-04-17
打赏
举报
回复
如果不要将大量的页面转为静态,而只是针对部分页面,例如首页的话。那么在linux下面的一个好办法如下:
编辑一个文件例如 getindex ,内容为
用 wget -O /path/to/your/dir/index.html http://www.your.com/yyyyy_for_index.php
然后再crontab里面设定运行 就ok了
例如半个小时刷新一次 crontab 里面就是 0,30 * * * * /root/getindex
(crontabe 具体用法请看 man手册)
注意是 -O 不是-0
nullfox
2004-04-16
打赏
举报
回复
可以做一个定时更新的假象,例如我们想每三天更新一次:
在一个用户经常访问的页面内加一个判断,第一次,将更新日期写入数据库(比如时戳为a),这样用户每次访问该页面时都检测一次,比较当前时戳(b),如果b和a的时间差值为3天,则重新生成一次HTML,同时更新数据库中时戳,反之跳过。
。。。这样不就间接地实现了吗
chinaworker
2004-04-16
打赏
举报
回复
这样不把服务器折腾死才怪
ironage
2004-04-16
打赏
举报
回复
在服务端做程序吧
foxmx
2004-04-16
打赏
举报
回复
呵呵....
继续....
ccterran
2004-04-16
打赏
举报
回复
可以做一个页面定时刷新
ccterran
2004-04-16
打赏
举报
回复
1,用ob_等控制输出函数
2,用模板.把模板分析结果写入文件
3,配置服务器.
chinaworker
2004-04-16
打赏
举报
回复
定时?
php 如何定时?
用c++ 做吧...........
动态生成
静态
及伪
静态
技术视频教程
本套教程把web系统常见的前台和后台功能从头到尾制作了一遍,实现了asp.net对数据库的增删改查和分页,后台包括了常见的单页模块、新闻模块、产品模块、图片上传等模块,加入了百度编辑器(编辑器按钮可以自定义、可以在编辑器内上传图片),其中产品模块可以对任意一个产品自定义属性,每个产品可以有不同的属性,新闻详细页面实现了上一条和下一条新闻的链接,系统首页、单页模块、新闻模块、产品模块全部实现了动态生成
静态
,新闻列表、产品列表使用伪
静态
技术完成,新闻列表页面还增加了组合查询功能,产品模块导航采用的是无限级分类技术,无论是前台还是后台界面都干净整洁,适合入门学习,个别模块逻辑稍微复杂,基础比较薄弱的学员需要多花点时间消化。开发环境:vs2019+sql2017 (vs和sql仅仅是工具,其他版本的工具也能进行开发,不影响学习)。
Java
静态
对象和非
静态
对象有什么区别??
Java
静态
对象和非
静态
对象有什么区别?? 对于
静态
方法,相信它的作用在各位朋友眼里也是不容置疑的,那么他跟非
静态
到底有什么区别呢??? 到底有什么好处呢??对于
静态
方法来说~
什么是
静态
,
静态
有什么作用呢?
静态
设置一个类,这个类有很多对象,很多对象的其中一个属性,属性值是一样的,此时每个对象都有个内存空间去存储属 性值 坏处: 1)空间浪费 2)如果想要将这个属性值进行修改,需要将所有对象的属性值都修改一遍,操作复杂麻烦 设置一个
静态
设置一个类,这个类有很多对象,很多对象的其中一个属性,属性值是一样的,可以将这个属性统一存放在一个地方, 让所有对象共享这个数据,此时,可以将该属性用static修饰 案例: 人类 姓名 年龄 国籍 创建多个对象 总结
静态
:
UML中的用例图是
静态
图还是动态图?UML规范给出答案
UML中的用例图是
静态
图还是动态图?先来看看csdn中的一个帖子:http://topic.csdn.net/t/20030112/12/1350749.
html
问题:UML中的用例图是
静态
视图还是动态视图?用例和角色都是结构事物,为什么用例图是动态视图?回复:1,用例图当然是
静态
图了,不过用来实现这个用例的序列图,协作图,活动图和状态机就是动态图了2,《UML用户手册》在
Java中
静态
属性和非
静态
属性有什么区别?
一、什么是
静态
属性和非
静态
属性?
静态
属性是指被static修饰符修饰的类、方法、变量或代码块等。 非
静态
属性是指没有被static修饰的。 二、
静态
属性和非
静态
属性的特点是什么?
静态
属性特点: 1. 一声明就被存储在栈中,直接占据内存,可以快速稳定的调用。 2. 生命周期长,从jvm加载开始到jvm加载结束。 ...
基础编程
21,887
社区成员
140,363
社区内容
发帖
与我相关
我的任务
基础编程
从PHP安装配置,PHP入门,PHP基础到PHP应用
复制链接
扫一扫
分享
社区描述
从PHP安装配置,PHP入门,PHP基础到PHP应用
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章