姑且不论静态页面或是.html的URL后缀是否更容被搜索引擎收录,让人容易记住的URL,简单的层次结构我们就有理由让自己网站URL更加简单,直接切入正题,为让URL更加友好,实现方法有两种:
1.地址重写,即http:///####.com/goods.aspx?id=1重写成http:///####.com/1.html,浏览者最终访问的是同一地址,地址栏显示的其实是一个伪地址,http:///####.com/1.html这
个页面是不存在的,这就是所谓的地址重写,也有人称之为伪静态。
2.直接通过文本流或者模板替换的方式,把http:///####.com/goods.aspx?id=1页面保存为一个为后缀名为.html页面,这样就生成了一个静态页面,与地址重写不同,这是一个真正存在的页面,而服务器端表单的提交执行(get或者Post)依然是在页面http:///####.com/goods.aspx?id=1中进行的,如今打开网站,很少有网站使用的是http:///####.com/goods.aspx?id=1这个的地址,当然,也有部分人员依然“执迷不悟”(http://www.cnblogs.com/SiteCategory.aspx?alias=all&page=5就是其中之一,呵呵),当我们选择更为友好的地址时那种方法更好呢?
大部分人都是选择生成静态的Html文件,原因很简单:
1.页面打开速度快,因为是纯HTML,没有与数据库发生交互,没有了众多的select数据库,速度肯定是快。
2.SEO很喜欢HTML,毕竟真的HMTL比“伪”的HTML要好的多,这个我没有考证过,认为可以忽略。
不可否认,生成静态页面以后,页面的速度的确是很快,即使你网站的数据库被黑客攻占了,数据库被SQL注入了某些可恨的JS,你的网站依然是可以正常运行的,但试想一下,成百上千的页面生成HTML以后,发现页面的某些地方要修改,如左侧广告位要多加一个版块,怎么办,为了这一个广告位,数以万计的页面再重新生成一次??如果你是淘宝网,你就不会这么说了,她可是有上亿的页面了。兄弟,别再折磨我们的服务器了,好吗,上亿的页面要生成多久啊。难道这是让我们的服务器休息吗?
为解决这个问题,个人的理解是这样的:
1.如首页,各模块主页等,生成时可以考虑生成静态HTML的方式,其一,这些页面访问量巨大,其二,一个首页也就只会生成一个HTML,如果需求有修改,再生成一次也无妨,马上搞定,不会增加服务器的负担。
2.详细介绍页,列表页等,用地址重写的方式,列表页的前几页用缓存,对我们的服务器好一点,他会汇报你的。详细介绍页直接读数据库吧,select * from table where id=1,用不了你服务器多长时间的。
菜鸟的个人想法,望大家指正!!