正 文:
目前,各大搜索引擎如google、百度、雅虎已经对动态页面诸如asp,php有着不错的支持了,只要动态页面后面的参数不要太长,如控制在3个参数内,页面内容做点优化,各大搜索对该类页面收录甚至不比静态html页面差,我有个全站是asp页的网站,其收录及排名远远超过了很多静态页的网站。
当然,任何网站,结构再好,如果没有内容作为支撑的话,最终还是留不住用户。搜索引擎的发展速度,已经不是当初几乎不能收录动态页面的水平了,各大搜索都在全力发展自己的索引技术,一般的动态页面在它们那里已经是能够轻易的纳入麾下。
有的网站,其要求与用户有着较强的交互性,互动性,页面刷新很快,更新的内容也很多,这类网站是不适合生成静态页的,因为网站上的信息具有时效性,你如果生成了html静态页,然后搜索引擎又索引了你的这些内容页,展示给用户看,而用户看到的信息又有可能是过时的失效的信息,这对用户是个不好的体验。所以,我建议,此类网站的动态页面尽量不要生成html,既占用大量空间,又可能对用户造成不好的搜索体验。
虽然我们说,如今动态页面和静态html页面的收录、排名效果相比不会差到那里,只有你控制的好。但静态页面还是有点点优势的。如果你的内容,基本是长时间有效的,不会轻易变更的,那我还是建议你生成静态页html。
本文仅讨论asp生成静态页的方法。asp生成html有很多方法。
1、FSO,ado方式生成html。此类方法用的很多。比如
飘易博客全站,除了统计,TAG系统是动态的外,其他全部生成了静态页面。当然,飘易博客在谷歌,百度的排名都很不错了。
2、采用组件如ISAPI_Rewrite重写,有自己服务器的站长还好办,虚拟主机的朋友就稍麻烦,除非请求服务商安装这个插件,再将程序参数提交服务器实现转化,看上去是静态化了,实际上是用静态路径访问数据库的内容。对于搜索引擎收入有一定作用,而且许多站长正是为此为苦苦寻找。
3、就是本文要讨论的重点内容。asp路径伪静态化。请看下述详细分解。
Asp页面如果你想使它看上去静态化,又不是完全真正静态化,目的就是使它对搜索引擎更友好点。讨好一下,作为辛苦的站长们也不为过嘛。就可以使用本方法。如show.asp?id=1的路径可以转换为show/?1.html,show.asp?id=1&id2=2转换为show/?1-2.html等等。
举例说明:我们需要把“http://www.piaoyi.org/show.asp?a=3&b=8”的url形式转换为“http://www.piaoyi.org/show/?3-8.html”的样子。
方法:建立目录show,在show下放入一个系统默认的首页文件,如default.asp,在default.asp里写如下代码:
<%
dim id,id1,id2,a,b
id=Request.ServerVariables("QUERY_STRING")
id1=replace(id,".html","")
id2=split(id1,"-")
a=id2(0)
b=id2(1)
response.write "a参数值为:"&a&"<br>b参数值为:"&b
''到这里已经获取了show.asp文件需要的a、b参数了。
''下面利用该参数,和以前一样打开数据库,获取内容。
%>
原理很简单。就是利用Request.ServerVariables("QUERY_STRING")取得接收的值(?后的参数),比如http://www.piaoyi.org/show/?3-8.html接收的就是3-8.html,对3-8.html进行过滤,我们只需要取得参数3和8,根据3和8再去从数据库中检索数据,后面跟动态ASP一样的了。
Bombee:基本没有影响,因为无论有没有伪静态,asp页都要先获取参数并作相应处理,而这样的处理方式,只是多了一个replace和split函数,处理时间基本是0;当然,一定要说有,那也是小数点后N多位的时间了。呵呵
看到你给我的留言了,谢谢博主提醒。
我的那个站点真正域名只有2个,而且在Gooogle已经提交了两个域名归为一个处理。即带www和不带www视为同一域名。
我现在也在测试阶段。呵呵
楼主,我用了你的方法,可是行不通,能不能加QQ聊,我的QQ是:112471092
可以可以把 ?去掉啊。。。
灾网上找了好长时间。没有发现方法
你的程序很好!写的不错。有时间加我,我们聊聊qq:61028844
这是我的邮箱:jiwangli369@163.com
这样伪静态效果不好,我的站就是这个,没效果,真正的伪静态比较好