|
精华帖 (0) :: 良好帖 (0) :: 新手帖 (4) :: 隐藏帖 (0)
|
|
|---|---|
| 作者 | 正文 |
|
最后更新时间:2008-04-22 关键字: 生成静态页面
生成静态页面在网上看了下资料 千篇一律都是那2种方法,看似简单,但在实际运用中所碰到的情况要复杂的多
我现在有一个WEB站点,要让用户访问的都是静态页面,已减少服务器开销和频繁访问数据库. 现在我打算采用在后台发布的时候同时生成静态页面. 现在有如下问题:还请大家指点一下.小弟在此感激不尽. 网站分多个栏目: 每个栏目有个显示该栏目下所有数据的页面,也就是通常的更多页面. 这个页面的数据是时刻变化的,而且还有分页,说是可以通过<script src="aa.jsp"></script>来实现,但这样又有何意义呢,还不是一样的需要解析jsp,一样的访问了数据库. 每一个具体的详细页面里面要显示点击数,还有上一篇,下一篇,这些都是时刻在变的啊,而且现在这个系统在后台数据的排列顺序是可以任意调整的,总不至于要调整一次顺序或者新增了一条数据又要重新生成相关的静态页面吧.同上面一样可以通过<script src="aa.jsp"></script>来实现动态更新点击数和上一页和下一页,同样还是一样的需要解析jsp,一样的访问了数据库. 还有一个问题就是直接生成HTML页面或者是先做好静态模板页面,在用程序替换相应的数据,直接生成的话一旦页面有改边那又要重新生成,几乎是不现实的,先做好静态模板页面,在用程序替换相应的数据对于栏目很多的话后期维护的工作量也是非常的大. 请问大家谁有好的解决方法,能和小弟分享一下吗. 声明:JavaEye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
|
|
| 返回顶楼 | |
|
最后更新时间:2008-04-22
如果一定要追求静态的话 在后台发布的时候就去 生成静态,如果对数据修改不是很平凡的话 就在每次修改的时候 就在对原静态 文件做修改,如果修改比较平凡的数据可以尝试下 ajax 在页面加载完成后在请求服务器获取这些数据
|
|
| 返回顶楼 | |
|
最后更新时间:2008-04-22
时刻变化的还搞什么生成静态页面?
|
|
| 返回顶楼 | |
|
最后更新时间:2008-04-22
你就搞个url伪装唬唬用户算了。。。
全部类似news.jsp?nid=xxx伪装成news_xxx.html |
|
| 返回顶楼 | |
|
最后更新时间:2008-04-23
我觉得你用页面缓存来处理这种需求比较好。根据页面内容更新的频率,估算出可以接收的刷新时间。静态页面也就是发布后绝对不变有些用。不然的话,远没有用页面缓存来得方便。特别是OSCACHE,可以选择性的缓存页面的哪些部分。
而且如果你们使用的Web软件对静态页面处理比较差(比如早期的Tomcat),那还真是不如用带缓存的JSP快。 |
|
| 返回顶楼 | |
|
最后更新时间:2008-04-23
方案1:在添加、修改的时候生成静态页面。
方案2:在请求的时候,检查是否有静态页面,并且静态页面的生成时间不超过多少时间,否则向动态页面请求,同时生成静态页面。 方案3:用OSCache这类缓存。 |
|
| 返回顶楼 | |
|
最后更新时间:2008-04-23
本人回复:
就是新闻页面里面有上一篇和下一篇 当添加一条新闻时那么排在最前面的那一条新闻就有上一篇了 那么这篇新闻的静态页面就要重新生成,有个更麻烦的问题就是新闻的顺序在后台是可以调整的 比如我把第2条新闻和第7条新闻换一下顺序,那么第1条,第2条,第3条,第6条,第7条,第8条新闻的静态页面都要重新生成,这样肯定是不现实的,还有一种情况就是可能以后排序的字段变了,那么不是所有的静态页面都要重新生成, 我也知道可以用<script src=*.jsp></jsp>或者ajax来实现,但是这样查看页面源文件的时候看到的是JS代码而看不到有JS生成的静态内容,但是有些网站看源代码看到的就是静态内容 比如http://www.dedecms.com/web-art/PHP_jiaocheng/20051113/31031.html 有谁知道这是怎么实现的吗 申明一点,这个肯定不是用的伪静态技术,因为这个网站是织梦内容管理系统的网站. |
|
| 返回顶楼 | |
|
最后更新时间:2008-05-31
这样问题的具体实现估计没有高手真正会来回答的吧
咱们只能通过蛛丝马迹,自己摸索了,希望lz有头绪了给我点idea |
|
| 返回顶楼 | |
|
最后更新时间:2008-05-31
其实这是一个很典型的技术选型问题。选不好,就会觉得难以处理。感觉有很多时候客户的一些需求是非常无聊的。估计可能是听说了一些静态比动态速度快之类的说法,就不管自己的具体情况,强行要程序员这么做。
而且很多时候还认死理,根本不听你解释。很讨厌这种情况。重要的业务不管,非要死磕那些不重要的。非要弄些没什么用,但是可以当嚎头的东西。 |
|
| 返回顶楼 | |
|
最后更新时间:2008-06-01
liuhu2967 写道 总不至于要调整一次顺序或者新增了一条数据又要重新生成相关的静态页面吧.
为什么不至于? 发布一条新的数据,或是调整了次序,就重新生成所有相关页面,没什么问题吧? sohu sina都这么干的就可以,没道理你这么做就不行吧。 你都全静态了,分页就一样可以是静态的?不需要jsp分页,不需要访问数据库。 做好“相关发布”机制。发布一条新闻的时候,自动按照设定好的规则,进行相关静态页面的重新生成。 说来说去说到CMS上去了... |
|
| 返回顶楼 | |










