静态化网站:

  1.  动态发布的内容url伪静态,/news/123.html, /news/123/, 而不要是/news/?id=123
  2.  动态发布内容,数据库中可以增加最后修改时间的字段, 然后输出last-modified的http头,方便wget处理,避免更新时重复下载没有改动的页面
  3.  wget镜像整站
  4.  rsync同步内容到主站
  5.  nginx设置静态内容的缓存时间

注意:

wget有个bug,处理中文url下载有问题,最好不要出现中文的文件

# cat ~/sync-site.sh
cd /var/www/ || exit 1
wget -m -nH -x -k 127.0.0.1
echo '
<html>
<meta http-equiv="refresh" content="0;url=http://www.notsobad.me/">
</html>
' > error.html

站点nginx配置:

server {
	listen   8000; ## listen for ipv4; this line is default and implied
	error_page 403 404 500 502 503 504  /error.html;
	server_name test.com;
	location / {
		root /var/www/ ;
		expires 30d ;
		add_header    Cache-Control  private;
		access_log  /dev/null ;
		break;
	}
}