目前,各大搜索引擎如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&"
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一样的了。

【转】比较详细的Asp伪静态化方法及Asp静态化探讨的更多相关文章

  1. 帝国cms文章内容tags关键词设置调用方法以及tags静态化

    说实话帝国cms用起来真的不好找一些功能,就比如说帝国cms的tag标签调用.需要注意的是帝国CMS文章的关键词和tags标签并非一码事,关键词标签是设置文章的关键词的,是用来给搜索引擎说明本篇文章的 ...

  2. 如何做URL静态化 和页面的静态化

    为什么要进行URL静态化? 如果帮到了您,您可以小支持一下,谢谢您   1.更好的迎合搜索引擎工作原理的爬行抓取机制:2.把网站URL静态化更有助于网站获得好的排名:3.URL静态化有利于用户体验.不 ...

  3. ASP.NET使用HttpHandler进行页面静态化(自动生成页面)

    这次的Demo是,一个根页面,点击链接创建子页面,子页面都是一个Template页面进行替换的 一个根页面 <%@ Page Language="C#" AutoEventW ...

  4. ASP.NET静态化方法

    直接通过访问页面获取html代码实现静态化 突然想到一个静态化页面的方法:直接保存源代码即可. 模拟浏览器访问,获得源码,写入文件.不知道是否存在安全风险:各位大神请指点: 注意 1.资源使用绝对路径 ...

  5. ASP.NET MVC 页面静态化操作的思路

    本文主要讲述了在asp.net mvc中,页面静态化的几种思路和方法.对于网站来说,生成纯html静态页面除了有利于seo外,还可以减轻网站的负载能力和提高网站性能.在asp.net mvc中,视图的 ...

  6. PHP 页面静态化/纯静态化/伪静态化

    个人博客迁移至独立博客:https://blog.plcent.com/,欢迎大家访问 概念 PHP静态化分为:纯静态化 和 伪静态化:纯静态化又分为:局部静态化 和 完全静态化 纯静态化:是把PHP ...

  7. PHP实现HTML页面静态化

    随着网站的内容的增多和用户访问量的增多,无可避免的是网站加载会越来越慢,受限于带宽和服务器同一时间的请求次数的限制,我们往往需要在此时对我们的网站进行代码优化和服务器配置的优化.一般情况下会从以下方面 ...

  8. freemark 页面静态化

    1. 页面静态化是什么? 页面静态化有非常多含义,在WEB开发中.静态网页一般理解为站点中大部分超级链接所引用的页面是单独的HTML静态页面文件(如.htm..html等页面文件,html语言本身是静 ...

  9. Spring MVC 学习总结(七)——FreeMarker模板引擎与动态页面静态化

    模板引擎可以让程序实现界面与数据分离,业务代码与逻辑代码的分离,这就提升了开发效率,良好的设计也使得代码复用变得更加容易.一般的模板引擎都包含一个模板解析器和一套标记语言,好的模板引擎有简洁的语法规则 ...

随机推荐

  1. LeetCode题解之Add two numbers

    1.题目描述 2.题目描述 题目思路可以参考合并单链表的思路,定义一个全局 进位标志,如果两个数值相加得到需要进位,则将进位标志置为1 . 3.代码 ListNode* addTwoNumbers(L ...

  2. Sublime Text 的使用笔记

    Sublime Text 是一个代码编辑器(Sublime Text 2,3是收费软件,但可以无限期试用),也是HTML和散文先进的文本编辑器.Sublime Text是由程序员Jon Skinner ...

  3. nginx 的socket 选项处理--TCP_DEFER_ACCEPT

    在nginx listen配置项的说明中有一个选项: deferred -- indicates to use that postponed accept(2) on Linux with. the ...

  4. python_循环(迭代)

    #for 和 while #for用来迭代处理,什么叫迭代?你就当没看到这个词,for是把一堆玩意做一个一个加工用的,比如吃一袋花生,得一个一个剥吧,就是这意思 a = 'abcde' #每个字母当做 ...

  5. 理解http请求

    HTTP请求的GET方法可以用来抓取网页. HTTP(HyperText Transfer Protocol)是一套计算机通过网络进行通信的规则,计算机专家设计出HTTP,使HTTP客户(如Web浏览 ...

  6. Aiseesoft Data Recovery 1.1.6 专业数据恢复软件破解版

    Aiseesoft Data Recovery是专业的数据恢复软件,它可以帮助你恢复几乎所有删除/丢失的文件,如照片,文件,电子邮件,音频,视频且支持从计算机,硬盘驱动器,闪存驱动器,存储卡,数码相机 ...

  7. python_web应用雏型

    python_web应用雏型 Web应用程序顾名思义,就是一种可以通过Web访问的应用程序, Web应用的最大特点是用户只需要有网络和浏览器,不需要再安装其他软件就可顺利通过web访问到程序. WEB ...

  8. Test checkout of feature 'Compiler' failed 解决方法(转载)

    Test checkout of feature 'Compiler' failed.   2014a的解决办法 适用于已安装compiler但破解不完全的, ht—tp://pan.baidu.co ...

  9. lambda 形参:返回值 lambda 匿名函数 格式:

    lambda 匿名函数 格式: lambda 形参:返回值 e.g f = lambda n:n**2 print(f(10))

  10. randint(1,100) s.add(n) 集合的去重复性