新闻系统中,不事先生成新闻列表的静态页面,而是用户访问的时候在生成,怎么实现??给思路

于娜 2008-03-24 08:18:23
新闻系统中,不事先生成新闻列表的静态页面,而是用户访问的时候在生成,怎么实现??给思路
...全文
127 点赞 收藏 7
写回复
7 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
fxs_2008 2008-03-26
up
有没有高效率的生成办法?
比如定时生成呢?如果文件已存在呢?
回复
sunfan1010 2008-03-26
(1)地址重写用Apahce的mod_rewrite模块中的RewriteRule指令实现重写)。
(2)判断文章是否存在用Apahce 的mod_rewrite模块中的RewriteCond指令
(3)生成html文件:
ob_star()打开缓冲,将读取文章的php包含进来,然后用file_put_contents将获得的缓冲内容写入指定HTMl文件。
回复
striker_un 2008-03-26
如果是用户访问,那么通常在用户访问时加上一个请求.
在超链接上加个什么事件的.
然后通知后台判断文件是否存在,决定是否生成文件之类的.
但这样也会照成效率很低下.

回复
yiwusuo 2008-03-25
[Quote=引用 2 楼 YuNa123 的回复:]
问题是用户访问的 .html 都没有啊,怎么写JS 生成 。
[/Quote]

发表新文章时复制生成一静态模板文件,如news.html
news.html中啊
如:
<script>
var overHtml='no';


if(overHtml=='no'){
window.open('动态执行文件.php','框架名');
}
</script>

生成静态页时将JS改成
<script>
var overHtml='yes';
</script>





当然只是思路,一句半句说不清
回复
himan2002 2008-03-24
可以用mod_rewrite如果静态文件不存在就执行动态脚本生成.
回复
于娜 2008-03-24
问题是用户访问的 .html 都没有啊,怎么写JS 生成 。
回复
yiwusuo 2008-03-24
思路1:
if(!file_exists($news_id.html)){
//生成它的代码
}

思路2:
发表新文章时复制生成一静态模板文件,如news.html,内含js代码及一隐藏框架,判断某值,然后再框架内执行动态语句生成该静态文件后刷新父窗口,即新文件生成
回复
相关推荐
发帖
基础编程
创建于2007-09-28

2.1w+

社区成员

从PHP安装配置,PHP入门,PHP基础到PHP应用
申请成为版主
帖子事件
创建了帖子
2008-03-24 08:18
社区公告
暂无公告