asp伪静态--无组件和组件两种方法

合集下载

htaccess实现伪静态方法

htaccess实现伪静态方法

.htaccess实现伪静态方法(注:本文由一九八网络科技V客学院PHP工程师原创,转载请注明出处,谢谢!)PHP静态化,分为真静态与伪静态。

真静态就是把静态化的内容写入到服务上,在服务器上是可以看到静态化页面的。

而伪静态方法只是在把url处理了一下,而没有生成真正的静态而面在服务器。

两种方法各有优势。

今天我重点在这里讲一讲伪静态方法。

下面介绍一下伪静态方法生成的三个步骤:第一:要配置服务器的重写模块1、打开Apache 的配置文件httpd.conf文件2、将#LoadModule rewrite_module modules/mod_rewrite前面的#去掉。

3、保存后重启Apache第二:编写test.php文件用于举例说明<?php$news_id=$_GET["news_id"];echo $news_id=?>//功能就是接受URL里的id参数,并在页面显示。

第三:.htaccess文件的编写与保存1、用记事本那一个空白文件后缀用.htaccess命名,不要文件名。

2、.htaccess的文件内容如下:.<IFMODULE mod_rewrite.c>.RewriteEngine On.RewriteBase /.RewriteRule ^t_(.*).html$ test.php?news_id=$1 [L].</IFMODULE>2.1、^t_(.*).html$ 描述你输入的URL地址,test.php?news_id=$1 其实际要访问的地址2.2、例如当您在浏览器中输入(假设您的test.php和.htaccess文件都在您服务器的mytest文件夹下)localhost/mytest/t_1.html 则在浏览器中将输出1,实际访问的地址是:localhost/mytest/test.php?news_id=12.3、如果输入为localhost/mytest/t_sophp.html 则浏览器输出sophp实际访问的地址是:localhost/mytest/test.php?news_id=sophp在实际的开发过程中,掌握好这三个步骤就可以解决伪静态方法,项目开发过程中可用这个通用的思路进行开发。

比较详细的Asp伪静态化方法及Asp静态化探讨

比较详细的Asp伪静态化方法及Asp静态化探讨

⽐较详细的Asp伪静态化⽅法及Asp静态化探讨⽬前,各⼤搜索引擎如google、百度、雅虎已经对动态页⾯诸如asp,php有着不错的⽀持了,只要动态页⾯后⾯的参数不要太长,如控制在3个参数内,页⾯内容做点优化,各⼤搜索对该类页⾯收录甚⾄不⽐静态html页⾯差,我有个全站是asp页的⽹站,其收录及排名远远超过了很多静态页的⽹站。

当然,任何⽹站,结构再好,如果没有内容作为⽀撑的话,最终还是留不住⽤户。

搜索引擎的发展速度,已经不是当初⼏乎不能收录动态页⾯的⽔平了,各⼤搜索都在全⼒发展⾃⼰的索引技术,⼀般的动态页⾯在它们那⾥已经是能够轻易的纳⼊麾下。

有的⽹站,其要求与⽤户有着较强的交互性,互动性,页⾯刷新很快,更新的内容也很多,这类⽹站是不适合⽣成静态页的,因为⽹站上的信息具有时效性,你如果⽣成了html静态页,然后搜索引擎⼜索引了你的这些内容页,展⽰给⽤户看,⽽⽤户看到的信息⼜有可能是过时的失效的信息,这对⽤户是个不好的体验。

所以,我建议,此类⽹站的动态页⾯尽量不要⽣成html,既占⽤⼤量空间,⼜可能对⽤户造成不好的搜索体验。

虽然我们说,如今动态页⾯和静态html页⾯的收录、排名效果相⽐不会差到那⾥,只有你控制的好。

但静态页⾯还是有点点优势的。

如果你的内容,基本是长时间有效的,不会轻易变更的,那我还是建议你⽣成静态页html。

本⽂仅讨论asp⽣成静态页的⽅法。

asp⽣成html有很多⽅法。

1、FSO,ado⽅式⽣成html。

此类⽅法⽤的很多。

⽐如飘易博客全站,除了统计,TAG系统是动态的外,其他全部⽣成了静态页⾯。

当然,飘易博客在⾕歌,百度的排名都很不错了。

2、采⽤组件如ISAPI_Rewrite重写,有⾃⼰服务器的站长还好办,虚拟主机的朋友就稍⿇烦,除⾮请求服务商安装这个插件,再将程序参数提交服务器实现转化,看上去是静态化了,实际上是⽤静态路径访问数据库的内容。

对于搜索引擎收⼊有⼀定作⽤,⽽且许多站长正是为此为苦苦寻找。

IIS中如何配置asp伪静态网页

IIS中如何配置asp伪静态网页

IIS中如何配置asp伪静态网页伪静态网页:顾名思义, 就是非真实静态网页,只是将动态网页的url映射到静态形式的url. 通常这样做是为了增强搜索引擎的友好性.但是有的朋友为了实时的显示一些信息.或者还想运用动态脚本解决一些问题.不能用静态的方式来展示网站内容.但是这就损失了对搜索引擎的友好面.怎么样在两者之间找个中间方法呢,这就产生了伪静态技术.就是展示出来的是以.html一类的静态页面形式,但其实是用ASP一类的动态脚本来处理的下面我们来看一下在IIS中设置伪静态的方法和步骤:1、在IIS的Isapi上添加这个筛选器,筛选器名称re,可执行文件选择Rewrite.dll;2、设置httpd.ini文件RewriteRule /news/(\d+)\.html /jsp/news\.jsp\?id=$1 [N,I]表示将news.jsp?id=95 转换成news/95.html以此类推,如果你有更多的参数,则增加相应的(\d+),而后面的id=$1,则增加id=$2,等等。

目前较为普遍的动态网页包括asp,php,jsp,shtml,jhtml,cgi......甚至还有一些自己定义的,比如:aspx,do,index,hello等等。

表现形式为:news.asp?id=95。

建议读者通过re_write将其转换成news/95.html,以便于google 对改网页的识别。

re_write是iis里的一个模块,下载地址:/blog/upload/re_write.rar 当需要将news.jsp?id=95的映射成news/95.html时,只需设置httpd.ini文件:RewriteRule /new如果你在处理数据翻页,那么写法是:More_<%=Page%>_<%=type%>.html (注:page是翻页页数,type是数据类型)表现形式:More_1_95.html如果翻下一页,则为:More_2_95.html,继续下一页的循环,则是:More_3_95.html,以此类推。

fastadmin 伪静态规则

fastadmin 伪静态规则

fastadmin 伪静态规则伪静态规则指的是在URL上没有真实存在的静态文件,但通过一些处理方法,使得URL看起来像是一个静态文件,从而提升网站的SEO效果和用户体验。

伪静态的原理是通过服务器配置或网站程序处理,将动态生成的URL转换成静态的URL。

这样可以使URL更加友好,方便搜索引擎索引和用户记忆。

在伪静态规则中,一般会将动态的URL转化为类似于静态的URL格式或者去掉动态参数,通过规则映射到对应的动态页面。

在进行伪静态规则的配置时,我们需要根据网站的具体情况和需求进行定制化的设置。

以下是一些常见的伪静态规则示例:1. 重写扩展名将带有扩展名的动态URL转化为不带扩展名的静态URL。

例如,将`配置示例:RewriteEngine OnRewriteRule ^news/(\d+) news.php?id=1 [L]2. 去掉动态参数将带有动态参数的URL转化为不带动态参数的静态URL。

例如,将`配置示例:RewriteEngine OnRewriteRule ^news/(\d+)/(\d+) news.php?id=1&type=2 [L]3. 重定向处理将旧的URL重定向到新的伪静态URL上,避免原有的外部链接失效。

例如,将`配置示例:RewriteEngine OnRewriteCond %{QUERY_STRING} ^id=(\d+)RewriteRule ^news.php /news/%1? [R=301,L]需要注意的是,伪静态规则的配置需要在服务器的配置文件(如Apache的.htaccess文件)或者网站程序中进行。

具体的配置方法可能因服务器和网站程序的不同而有所差异,需要根据实际情况进行设置。

此外,伪静态规则的配置还需要考虑一些其他方面的问题,比如重复内容的处理、URL到动态页面的映射、异常情况的处理等。

在进行伪静态规则的配置时,建议参考相关的文档和教程,或者咨询专业人士的意见,以确保配置的正确性和安全性。

什么是伪静态

什么是伪静态

什么是伪静态伪静态和真正的静态,相信很多时候,大家根本用肉眼分辨不出来。

大家可以从这个“伪”就知道,肯定是静态网站的一个冒充品。

但是其实效果是一样的,而且比较灵活性,不会那么刻板。

当然纯静态的网站,在每次访问的时候都是独立的,不会再去读取数据库之类的东西,但是伪静态,实际就是一个动态的网页,只是把它的命名改的更友好一点而已!下面是一些伪静态的介绍:从URL结构以及页面名称看,伪静态和静态页面是一样的。

伪静态的页面后缀可以是html htm 或者是目录格式伪静态只是改变了URL的表现形式,实际上还是动态页面静态页面可以节省服务器资源,而伪静态严格说是增加服务器资源消耗的总结,在SEO方面,伪静态和静态页面的功能是相同的,但是伪静态本质上还是动态页面,所以消耗资源是和动态页面一样的,而且因为Rewrite服务器还需要消耗额外的资源。

伪静态的一些不足之处1、占用cpu :"伪静态在消耗服务器的CPU上面或者是资源上面是比纯静态网站大的多,而且容易造成瘫痪。

2、网站承受力低。

另外,会造成网站可承受同时在线人数剧减。

如果你的网站可以保证1000人同时访问的话,那么做了伪静态处理之后,300人访问就足以让你网站挂掉。

3、网页打开慢。

伪静态页面打开速度快,简直太搞笑了,伪静态仍然要读取数据库,还额外的多了一个.重写网址.的过程,其他的步骤绝对不会比动态少,怎么会快呢?4、重复的页面。

做了伪静态后,原有的页面也可以访问,这就造成了大量的伪静态页面和动态页面重复,对网站极为不好。

5、需要服务器支持。

并不是所有的服务器都支持伪静态的,这无形中又增加了成本。

所以,如果网址中的动态参数没有达到影响搜索引擎收录的程度,动态要比伪静态好的多。

6、造成真正的静态网页无法访问。

如果把php伪静态成html,那么真正的静态页就无法访问了。

(可通过修改服务器配置解决,可是你又何必去费这把力气呢?如何选择静态和伪静态网站?下面是结合百度百科的一些引用选择伪静态还是真静态1、使用真静态和伪静态对SEO来说没有什么区别2、使用真静态可能将导致硬盘损坏并将影响站点性能(这个实在是个谬论,非静态的对硬盘的读取次数胜过真静态)3、使用伪静态将占用一定量的CPU占有率,大量使用将导致CPU超负荷4、最重要的一点,我们要静态是为了SEO5、真静态的访问速度明显比伪静态的访问速度要高所以:1、使用真静态的方法可以直接排除了,因为无论怎么生成,对硬盘来说都是很伤的。

ASP生成静态网页技术的实现-最新文档

ASP生成静态网页技术的实现-最新文档

ASP生成静态网页技术的实现当今大型网站页面都改用了静态的页面,这是因为静态页面可以提高浏览速度,减轻服务器的负担,方便搜索引擎收录,网站更安全,静态页面从理论上讲是没有攻击漏洞的,基于以上的好处所以现在知名、主流的大站基本上都静下来了。

ASP(Active Server Pages)是 Web 的服务器端脚本编写环境,也是绝大多数从事网站开发人员很熟悉的编程环境。

如何用asp生成静态网页一般有两种方法:1使用FSO生成,2使用XMLHTTP生成。

下面将综合这两种方法来实现静态页的生成。

1 ASP生成静态页的方法我们用标签替换的方法生成静态网页,做一个模版页mb.asp,生成静态页的时候直接把需要变化的部分的标签替换掉就行了。

此例中我们把模板页mb.asp设置两个标签%title%和%content%。

模板页可以是静态页也可以是动态页,但出于实际应用的方便我们用动态页做为模板页。

静态网页执行页面为do.asp里面是具体生成静态页的代码。

2 程序中用到相关技术的方法和属性1) Request.ServerVariablesRequest.ServerVariables("Server_Name")服务器的主机名、DNS地址或IP地址Request.ServerVariables("Server_Port")接受请求的服务器端口号Request.ServerVariables("Path_Info")客户端提供的路径信息2) ADODB.Stream对象mode 读写模式,可选值:1-读,2-写,3-读写type 数据类型,可选值:1-二进制,2-文本charset 编码方式,可选值:utf-8,gb2312position 数据流位置,表示数据操作从这里开始,第一个位置的值为 0,不是 1。

size 数据流大小(字节)LoadFromFile 从文件读取数据到 Stream 对象,Stream 对象原有内容将被清空SaveToFile 将 Stream 对象数据保存为文件,第二个参数:1-不允许覆盖,2-覆盖写入Open 打开数据流Close 关闭数据流Read([长度])从 Stream 对象中读取二进制数据,不指定长度表示全部读取ReadText([长度])从 Stream 对象中读取文本数据,不指定长度表示全部读取Write(buffer)将缓存数据写入 Stream 对象WriteText(data, [option])将文本数据写入 Stream 对象,第二个参数:0-字符写入,1-行写入CopyTo(destStream, count)将 Stream 对象的指定数据拷贝到 destStream3) MSXML2.XMLHTTP对象Open( bstrMethod, bstrUrl, varAsync, bstrUser,bstrPassword )bstrMethod:数据传送方式,即GET或POST。

webconfig伪静态规则

webconfig伪静态规则

webconfig伪静态规则在网站开发中,为了提高网站的用户体验和搜索引擎优化(SEO),伪静态规则是一个常用的技术手段。

而在中,web.config 文件是用来配置网站的重要文件之一。

本文将介绍web.config文件中的伪静态规则的使用方法和注意事项。

什么是伪静态规则呢?简单来说,伪静态规则是一种将动态页面的URL转化为静态页面URL的技术。

通过伪静态规则,我们可以将动态页面的URL转化为带有扩展名的静态页面URL,从而提高网站的可读性和搜索引擎的收录率。

在web.config文件中,我们可以使用<rewrite>元素来配置伪静态规则。

下面是一个示例:```xml<system.webServer><rewrite><rules><rule name="Rewrite to static URL"><match url="^article/(\d+)$" /><action type="Rewrite" url="article.aspx?id={R:1}" /></rule></rules></rewrite></system.webServer>```在上面的示例中,我们定义了一个名为"Rewrite to static URL"的伪静态规则。

该规则的作用是将形如"article/123"的URL重写为"article.aspx?id=123"的URL。

其中,"^article/(\d+)$"是一个正则表达式,用来匹配URL中的参数值,并通过"{R:1}"来引用匹配到的参数值。

除了上述示例中的URL重写规则,我们还可以根据具体需求配置其他的伪静态规则。

伪静态规则代码

伪静态规则代码

伪静态规则代码一、什么是伪静态规则代码在网站开发中,伪静态是指通过对URL进行重写,使其看起来像是静态页面的一种技术。

伪静态规则代码是指用来实现伪静态的一段代码或配置。

传统动态网页的URL通常包含参数,例如:。

而使用伪静态后,URL会变得更加友好和美观,例如:。

通过使用伪静态规则代码,可以提升网站的用户体验和搜索引擎优化效果。

二、为什么使用伪静态规则代码1. 改善用户体验动态网址通常包含大量参数和特殊字符,不易记忆和分享。

而采用伪静态后,URL会变得简洁、有意义且易于理解。

这有助于提高用户对网站内容的识别度和理解度。

2. 提升搜索引擎优化效果搜索引擎更喜欢处理静态页面而非动态页面。

通过使用伪静态规则代码,可以将动态生成的页面转换为看起来像是静态页面的形式呈现给搜索引擎爬虫。

这有助于提高网站在搜索引擎结果页面中的排名。

3. 方便URL的管理和维护动态网址通常包含大量参数,不方便管理和维护。

而使用伪静态后,URL会变得简洁明了,易于管理和维护。

三、如何编写伪静态规则代码1. 选择合适的伪静态规则代码方式在编写伪静态规则代码之前,需要先选择合适的方式来实现伪静态。

常见的方式包括:•Apache服务器下使用.htaccess文件•Nginx服务器下使用rewrite模块•IIS服务器下使用URL Rewrite模块根据所使用的服务器类型和具体需求,选择相应的方式进行配置。

2. 编写伪静态规则代码示例(以Apache服务器为例)a. 创建.htaccess文件首先,在网站根目录下创建一个名为.htaccess的文件。

b. 启用.htaccess确保Apache服务器已开启.htaccess功能。

在主配置文件或虚拟主机配置中添加以下内容:<Directory "/path/to/your/website">AllowOverride All</Directory>c. 编写伪静态规则代码在.htaccess文件中添加以下示例代码:RewriteEngine OnRewriteBase /# 将 /article.php?id=1 重写为 /article/1.htmlRewriteCond %{REQUEST_FILENAME} !-fRewriteCond %{REQUEST_FILENAME} !-dRewriteRule ^article/([0-9]+)\.html$ article.php?id=$1 [L]在上述示例代码中,RewriteEngine On表示启用URL重写功能,RewriteBase /表示基础重写路径。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

一,ASP伪静态(无组件)
测试成功,但url仍然包含”?”,测试项目:ASP无组件伪静态测试
ASP伪静态(无组件)
下面的代码无法执行,这是由于ASP 会在为变量赋值之前执行#include 命令:
<%
fname="header.inc"
%>
<!--#include file="<%=fname%>"-->
参考:/asp/asp_incfiles.asp.html
无组件伪静态实现思路:例如product.asp页面,网址为http://127.0.0.1/product.asp?articleid=100&classid=9 转换为伪静态url为http://127.0.0.1/product/?100_9.html
方法是:在根目录下建立product文件夹,把product.asp文件复制到该文件夹中,更名为index.asp.这样的话,由于http://127.0.0.1/product/?100_9.html中的?原因,此url将
默认访问product文件夹下的index.asp,100_9.html整体作为参数。

把接受到的参数处理拆分就能分别得到articleid和classid的值。

如下所示:
<%
dim
urlquerystr,urlquerystr1,urlquerystr2,canshu_articleid,canshu_bigcla ssid
urlquerystr=Request.ServerVariables("Query_String")
urlquerystr1=replace(urlquerystr,".html","")
urlquerystr2=split(urlquerystr1,"_")
canshu_articleid=urlquerystr2(0)
canshu_bigclassid=urlquerystr2(1)
%>
问题是,这样一来会造成众多文件夹。

对于网站主导航菜单来说,想避免这种问题,可以使用下面的方法,只需建立一个文件夹。

建立一个新文件夹,取名为html,在文件夹中创建index.asp文件,导航菜单链接都指向这个文件,但链接需要传递参数,这个文件根据参数值的不同,选择加载相应文件。

如下所示:
if Request.ServerVariables("Query_String")="wsdp_2.html" then %>
<!--#include virtual="wsdp.asp" -->
<% end if
if Easp.RQ("menue",0)="3" then %>
<!--#include virtual="product.asp" -->
<% end if
if Easp.RQ("menue",0)="4" then %>
<!--#include virtual="product.asp" -->
<% end if
if Easp.RQ("menue",0)="5" then %>
<!--#include virtual="news.asp" -->
<% end if
if Request.ServerVariables("Query_String")="kfwd_6.html" then %>
<!--#include virtual="kfwd.asp" -->
<% end if
if Request.ServerVariables("Query_String")="about_7.html" then %>
<!--#include virtual="about.asp" -->
<% end if %>
这种方法需要注意的是:虽然html文件夹中的index.asp每次最多选择性的加载一个文件,但是要加载的所有文件不能有重命名变量。

例如不能在wsdp.asp和product.asp中同时声dim id.可以把变量声明全部放在index.asp文件中。

还要注意“ASP 会在为变量赋值之前执行#include 命令”的问题。

大同小异,另一种方法是,在html文件夹中建立多个文件夹,每个文件夹中的index.asp文件分别加载
<!--#include virtual="***.asp" --> 一个文件。

html文件夹中的index.asp仍然根据参数来选择,不同的是要导向不同文件夹下的index.asp文件(Response.Redirect(url))。


样可以把众多文件夹集中放置在一个文件夹中,还可避免变量重命名问题。

二,ASP伪静态(ISAPI Rewrite组件)
测试成功,测试项目:ASP伪静态组件ISAPI_Rewrite测试
下载ISAPI_Rewrite,下载地
址:/download/。

ISAPI_Rewrite分精简(Lite)和完全(Full)版,完全版试用45天,精简版免费,但功能有限,如不支持分布式.htaccess配置、目录以及网站级配置,只有一个精简版安装目录中的全局的ttpd.conf 配置能被载入。

本次测试环境:window server 2003,iis 6.0,asp,ie8
本次测试网站:"ASP伪静态组件ISAPI_Rewrite测试"
本次测试过程:(1)下载并安装ISAPI_Rewrite3精简版
ISAPI_Rewrite3_0087_Lite.msi。

(2)安装目录给予IIS_WGP组的读写权限。

(3)打开IIS管理器,选择Web服务扩展,允许“所有未知ISAPI 扩展”。

(4) 右击“网站”树,选择属性->ISAPI筛选器。

可以发现已经自动添加了ISAPI_Rewrite3筛选器。

由于这是精简版本,这个筛选器将应用与本计算机的所有网站,而完全版可以单独为每个网站添加筛选规则。

打开ISAPI_Rewrite3精简版安装目录下的Helicon Manager.exe程序,也可以发现不能为单个网站定义筛选规则。

(5)为网站编辑筛选规则。

安装目录下的ConfigEditor.exe可以编辑RewriteRule ,RegexTest.exe可以测试RewriteRule。

(6)修改测试网站中的链接,使之符合上面所定义筛选规则。

(7)测试成功。

参考:ASP生成伪静态的几种方法
/share/detail/37944191
[转载]ISAPI_Rewrite3.1教程中文版
/xxwgcg/articles/1766754.html
SEO中的正则表达式(ISAPI Rewrite)
/share/detail/18543773
ISAPI_Rewrite下载
/download-isapi_rewrite3.htm。

相关文档
最新文档