顾名思义, 伪静态是相对真实静态来讲的.
通常我们为了更好的缓解服务器压力,和增强搜索引擎的友好面.都将文章内容生成静态页面.
但是有的朋友为了实时的显示一些信息.或者还想运用动态脚本解决一些问题.不能用静态的方式来展示网站内容.
但是这就损失了对搜索引擎的友好面.怎么样在两者之间找个中间方法呢,这就产生了伪静态技术.
就是展示出来的是以.html一类的静态页面形式,但其实是用ASP一类的动态脚本来处理的.
我的一个思路是用IIS的404错误处理机制来实现的.这个比rewrite技术要灵活得多.
首先,设置站点属性-自定意错误
找到HTTP错误404,然后编辑属性->消息类型选中URL->URL填入“/index.asp”,或您的错误处理页面.
这样,比如用户或蜘蛛访问http://tech.todo.net.cn/12345.html 时(12345为文章在数据库的ID).由于些页面不存在,所以触发了404错误.转向了index.asp
在index.asp里加
CurrDomain=Request.ServerVariables("HTTP_HOST") '当前访问域名
CurrURL=Replace(Request.ServerVariables("QUERY_STRING"),"404;http://"&CurrDomain&":80","") '当前访问URL
此时的CurrURL应该是:12345.html .
这样,就得到用户正在试图访问的页面.然后提取里边的文章ID(应该为:12345),用正则,这里就不多说了.
然后到数据库里提取出文章内容.输出到页面里,就OK了.
这样.用户或蜘蛛看到的URL还是他访问的URL.而我们对内容的处理上可以用到了动态技术.这就是我们想要的结果.