网站首页静态化
关于页面静态化的处理,自己有一下几点理解,还请多多指教。?
1、首页可以采用freemarker来静态化,也可以采用流来处理,还可以通过oscache等方式来处理。?
2、一些二级页面和一些动态页面可以采用urlrewriter来实现伪静态+缓存来实现速度上的优化。一方面可以针对seo优化,用户体验上也不错。?
3、还是针对第二点,一些二级页面和一些动态页面也都可以使用freemarker来做处理。速度上差距不大,因为2有缓存的支持。
做了个简单的例子,针对访问页面的静态化,例如访问index.jsp则生成index.html然后执行跳转。代码如下:
public class FileCaptureResponseWrapper extends HttpServletResponseWrapper {private CharArrayWriter output;public String toString() {return output.toString();}public FileCaptureResponseWrapper(HttpServletResponse response) {super(response);output = new CharArrayWriter();}public PrintWriter getWriter() {return new PrintWriter(output);}public void writeFile(String fileName) throws IOException {FileWriter fw = new FileWriter(fileName);fw.write(output.toString());fw.close();}public void writeResponse(PrintWriter out) {out.print(output.toCharArray());}} web.xml的配置就不多说了,把过滤配上后然后即可实现所有jsp生成html,针对一些二级页面或首页来优化都不错。