dotNET伪静态详解及配置_zhangxuhbwa

dotNET伪静态详解及配置_zhangxuhbwa
dotNET伪静态详解及配置_zhangxuhbwa

https://www.360docs.net/doc/6410112656.html,伪静态详解及配置

转载请说明出处一、什么是伪静态

定义:动态网页通过重写URL的方法实现去掉动态网页的参数,但在实际的网页目录中并没有必要实现存在重写的页面。

例如:我们当访问地址https://www.360docs.net/doc/6410112656.html,/ForEvErNoME/archive/2012/06/05/2529259.html时,你会认为在站点服务器下存在名为2529259.html文件,其实实际上它可能是不存在的,而可能你看到的内容是通过重定向/archive/article.aspx?year=2012&month=06&day=05&id=2529259显示出来的。

二、为什么要把网站伪静态化

1、伪静态的用处

有些用户觉得,伪静态和真静态实际被收录量会相差很大,其实不然,从你个人角度,你去判断一下一个帖子到底是真静态还是伪静态?估计很难看得出,因为所谓静态的意思,就是地址中不带问号,不带问号的就是静态,管他是真的还是伪的?搜索引擎看得出吗?所以说,其实不论是真的还是伪的,其实对于搜索引擎来说都是一样的,搜索引擎没有说,你这个是伪的,我不收录你。

追根究底来说,为什么搜索引擎会不收录带问号的网址?因为搜索引擎怕由于问号而进入死循环,称为"搜索机器人陷阱(Spidertraps)"(以前动网就有这样一个漏洞,蜘蛛进去出不来了),所以很多时候带问号的地址搜索引擎是不会进去的,伪静态对于搜索引擎来说,其实就是静态,因为地址中没有带问号,所以没有真静态比伪静态收录得多的说法。

2、为什么选择伪静态?

有很多用户说:真静态不好吗?为什么不用真静态?访问起来不是更快吗?负载不是更好吗?等等等等……

在这里,其实只用一个问题来回答:为什么选择MYSQL?很多用户大概不明白为什么那么多大型论坛都选择了MYSQL 数据库作为储存机制,大概大部分都是想:"因为DZ用了MYSQL,所以就是MYSQL".

其实不然,试想DZ为什么会在那么多论坛程序并存的日子生存下来并笑傲江湖,很大原因是因为DZ用了MYSQL.试想如果大C当年改的程序是一个文本论坛,那还会有DZ的今天吗?或者从另一个角度问,为什么那么多大型网站都选择了MYSQL而不是文本作为储存机制?

所谓文本论坛,实际就跟真静态的说法差不多了,将数据储存在空间上面,大量读写硬盘,等等……

为什么这种写法会被淘汰呢?我相信答案不会是老师所说的:"Discuz!目前有2129867 篇帖子,存储成html的话大约是20799M,也就是20G左右。这当中还不计算由于磁盘存储机制造成的空间浪费(100个1k的文件占用的空间

可能会是200K)。"

这种说法从我个人观点来看,这个理由不能给用户不使用真静态充分的理由。然而,另一个理由却是值得我们注意思考的,也是为什么绝大多数站都不选择生成静态:

"删除、更新这些html内容会导致大量的磁盘io操作以及大量的磁盘碎片。"

正如上面的说法,在实际当中确实会导致大量的磁盘I/O操作(input/output),大量进行I/O操作带来的后果可想而知,会产生大量的磁盘碎片甚至会导致硬盘出现坏道。

所以对于生成静态而言,还不如去用文本论坛,可以更好的解决你们的需求。(副W就是做文本论坛出生的,当时的名字为ofstar,后因发展困难转为MYSQL,而PW生成静态页面也就是PW以前文本方式稍加改进用于吸引用户眼球的噘头)

当然,如果大家记忆力好的话,应该可以记得PW4的时候PW论坛不能访问很长一段时间,后来恢复到一段时间前的数据,官方的说法是被人攻击而导致硬盘损坏,其实这种说法是比较不可信的,相对于是被攻击导致硬盘损坏还是大量I/O操作而产生的后果,我个人更倾向于后者。

当然,如果大家比较关注5d6d的话,应该知道前几天有一天时间5d6d无法访问,根据非官方消息是因为硬盘坏了,而损坏的原因我想当然是因为大量用户大量进行I/O操作了,试想,我们一个论坛,进行磁盘I/O操作的仅为管理员进行更新缓存时进行的,而5d6d每一个会员就是一个管理员,试想下对磁盘是多大的考验?所以我并不奇怪5d6d 的硬盘坏了。

当然,也许在读这篇文章的很多朋友都有使用过BT,也听说过BT对硬盘很伤,不能开多,而所谓伤害,和这里指的都是同一样东西,大量I/O导致磁盘出现碎片甚至出现磁盘坏道。

这里都是说些很实际的例子来说明问题了。

3、伪静态的坏处

当然犹如一篇文章的作者所说的:"如果流量稍大一些使用伪静态就出现CPU使用超负荷,我的同时在线300多人就挂了,而不使用伪静态的时候同时在线超500人都不挂,我的ISS数是1000."

确实是这样的,由于伪静态是用正则判断而不是真实地址,分辨到底显示哪个页面的责任也由直接指定转由CPU来判断了,所以CPU占有量的上升,确实是伪静态最大的弊病。

4、我们应该选择伪静态还是真静态?

我们来总结一下:

(1)、使用真静态和假静态对SEO来说没有什么区别

(2)、使用真静态可能将导致硬盘损坏并将影响论坛性能

(3)、使用伪静态将占用一定量的CPU占有率,大量使用将导致CPU超负荷

(4)、最重要的一点,我们要静态是为了SEO

所以:

(1)、使用真静态的方法可以直接排除了,因为无论怎么生成,对硬盘来说都是很伤的。

(2)、既然真伪静态的效果一样,我们就可以选择伪静态了。

(3)、但是伪静态大量使用会照成CPU超负荷。

(4)、所以我们只要不大量使用就可以了。

(5)、既然静态只是给SEO看的,我们只需要伪静态给SEO就行了,不需要给用户使用。

(6)、所以我们只要在专门提供给SEO爬的Archiver中使用伪静态就可以了。

(7)、谢谢大家耐心看我写的文章。

(8)、有何不解的地方或是有不同的看法欢迎提出。

5、关于伪静态和真静态的评论

真正的静态化和伪静态还是有本质的区别的。为浏览用户处理一个纯粹htm和一个调用多个数据的php在CPU的使用率方面明显前者少。记得原来有个人说html下载硬盘读写频繁,他这么说好像读取数据库不用读写磁盘似的,何况还有一大堆缓存的零散php也是放在硬盘的,这些读取不用磁盘操作么?可笑。

读取单个htm+图片Flash等附件就可以实现的目的,何苦要读数据库又要读php缓存文件又要重新整合数据输出再+图片Flash等附件这么大费周章呢?CMS首页不需要很多的互动的,论坛那一套不应该拿到这里来用,相反应该更多考虑的是:美观!兼容!信息的直观!性能!还有稳定!

其实所谓的伪静态页面,就是指的URL重写,在https://www.360docs.net/doc/6410112656.html,中实现非常简单。首先你要在你的项目里引用两个DLL:ActionlessForm.dll、URLRewriter.dll。真正实现重写的是URLRewriter.dll 但是如果你要实现分页,那么必须使用这个ActionlessForm .dll。

三、怎样在https://www.360docs.net/doc/6410112656.html,下配置伪静态

下载地址1:https://www.360docs.net/doc/6410112656.html,/source/524514

下载地址2:https://www.360docs.net/doc/6410112656.html,/UserFiles/URLRewriter.rar

下载地址3:https://www.360docs.net/doc/6410112656.html,/download/0/4/6/0463611e-a3f9-490d-a08c-877a83b797cf/MSDNURLRewriting.msi

URLRewriter.dll

1、首先,去下载MSDNURLRewriting.zip,不要在网络上直接下载URLRewriter.dll,一般网络上的URLRewriter.dll都

是未经过编译重新生成只有8k大小,而实际的大小是20k左右。

2、MSDNURLRewriting.zip解压后会有MSDNURLRewriting.msi文件,点击安装,在安装文件中可以找到URLRewritingCode.sln,点击打开,然后重新生成解决方案,就可以得到重新生成的URLRewriter.dll(20k大小)。

3、把URLRewriter.dll复制一份到项目的bin文件下,然后添加引用。

4、下面就是Web.Config文件的配置了

4.1.在web.config文件中节点的下面的配置节点

4.2.在节点范围类编写重写规则

~/index.html

~/index.aspx

~/s.html

~/s.aspx

~/s/(.[\w]*)/(.[\d]*).html

~/s/(.[\w]*)/(.[\d]*)/(.[\d]*).html

4.3.在节点中的下面配置

5、配置IIS解析.html文件

配置IIS6.0IIS

配置:网站->属性->虚拟目录->配置(G)...->映射->通配符应用程序映射->添加

可执行文件:c:/windows/https://www.360docs.net/doc/6410112656.html,/framework/v2.0.50727 /aspnet_isapi.dll

扩展名为:.html

确认文件是否存在:不选.

配置IIS7.5

你的网站-->IIS中处理程序映射-->

添加脚本映射(路径:*.html 可执行文件%windir%/https://www.360docs.net/doc/6410112656.html,/Framework/v2.0.50727/aspnet_isapi.dll 名称:任意,比如Hml )

添加通配符脚本映射(路径:* 可执行文件:C:/Windows/https://www.360docs.net/doc/6410112656.html,/Framework/v2.0.50727/aspnet_isapi.dll 名称:任意,比如All)

托管处理程序映射(路径:* 可执行文件:System.Web.UI.PageHandlerFactory名称任意比如Html-Integrate)-------->

IIS中模块-->添加---->(名称:任意如All 类型:URLRewriter.ModuleRewriter把仅针对向https://www.360docs.net/doc/6410112656.html, 应用程序或托管处理程序发出请求调用勾上ok )

6、以上配置好之后就可以通过以下方式来访问了

例如用户输入hostname/d11.html,服务器会把他重写为http://hostname/default.aspx?id=11。

换句话说用户输入http://hostname/d11.html,实际访问的是http: //hostname/default.aspx?id=11 ActionlessForm.dll

namespaceActionlessForm

{

public class Form : System.Web.UI.HtmlControls.HtmlForm

{

protected override void RenderAttributes(HtmlTextWriter writer)

{

writer.WriteAttribute("name", https://www.360docs.net/doc/6410112656.html,);

base.Attributes.Remove("name");

writer.WriteAttribute("method", this.Method);

base.Attributes.Remove("method");

this.Attributes.Render(writer);

base.Attributes.Remove("action");

if (base.ID != null)

writer.WriteAttribute("id", base.ClientID);

}

}

}

创建此类并对其进行编译之后,要在https://www.360docs.net/doc/6410112656.html, Web 应用程序中使用它,应首先将其添加到Web 应用程序的References 文件夹中。然后,要使用它来代替HtmlForm类,做法是在https://www.360docs.net/doc/6410112656.html, 网页的顶部添加以下内容:

<%@ Register TagPrefix="skm" Namespace="ActionlessForm" Assembly="ActionlessForm" %>然后,将

(如果有)替换为:并将右边的标记替换为:

成功!

虚拟主机

在网上看到,很多朋友在https://www.360docs.net/doc/6410112656.html,中做urlrewrite,用的是HttpHandle+Server.Transfer的方法。其实这种方法是错误的。

第一,HttpHandle是实现不了urlrewrite的;

第二Server.Transfer是标准的重定向,根本不是urlrewrite。

其实,实现urlrewrite不用自己HttpHandle,也不用自己实现HttpModule,用几行代码就可以轻松实现。我这里介绍的是在虚拟主机上,虚拟主机不同于自己的服务器,你是没有权限去修改iis,也没有权限去安装iis rewrite之类的iis插件。但是我们仍然可以轻松完成需要的功能。具体做法如下:打开global.asax.cs,定位到protected void Application_BeginRequest(Object sender, EventArgs e)。从方法名我想也能猜到它是做什么的。输入如下代码:

protected void Application_BeginRequest(Object sender, EventArgs e)

{

stringoldUrl = HttpContext.Current.Request.RawUrl ;

string pattern = @"^(.+)default/(/d+)/.aspx(/?.*)*$";

string replace = "$1default.aspx?id=$2";

if(Regex.IsMatch(oldUrl, pattern, RegexOptions.IgnoreCase | https://www.360docs.net/doc/6410112656.html,piled))

{

stringnewUrl = Regex.Replace(oldUrl, pattern, replace, https://www.360docs.net/doc/6410112656.html,piled | RegexOptions.IgnoreCase);

this.Context.RewritePath(newUrl);

}

}

有了上边这段代码,我访问一个类似:.../default/123.aspx 的网址,当然这个网址在我的电脑上不存在,它就会被定向到:.../default.aspx?id=123。

当然,利用功能强大的正则表达式,你可以任意按照自己的需要来重写url,这一切都是在服务器端默默的进行,在客户端是不会有任何察觉的。由于是在虚拟主机上,我们只能重定向.aspx文件,如果是自己的服务器,只要把后缀名在iis中注册一下,就可以实现任意后缀名的处理。比如你可以注册一个*.myweb这样的类型,这样别人访问default/456.myweb时,你可以把它重定向到default.aspx?id=456。总之一句话,只要你能想到,.net就可以帮你实现,并且这一切不需要多少的代码

四、相关知识

1、正则表达式

有一个经典的教程:正则表达式30分钟入门教程,大家可以搜索一下。这个教程的确很简单,看完基本上写一些简单的正则就没有问题了。正则是一个需要长期使用的工具,隔段时间不用会忘记,所以我每次都看一遍这个教程。其实学过之后重要的就是一点内容。

简单罗列如下:

.换行符以外的所有字符

\w 匹配字母或数字或下划线或汉字

\s 匹配任意的空白符

\d 匹配数字

\b 匹配单词的开始或结束

^ 匹配字符串的开始

$ 匹配字符串的结束

* 重复零次或更多次

+ 重复一次或更多次

? 重复零次或一次

{n} 重复n次

{n,}重复n次或更多次

{n,m} 重复n到m次

应用替换时,前面第一个()中匹配的内容后面就用$1引用,第二个()中匹配的就用$2应用……(见4.2)这个个()里面的东东叫原子组。

2、XML CDATA

术语CDATA 指的是不应由XML 解析器进行解析的文本数据(Unparsed Character Data)。在XML 元素中,"<" 和"&" 是非法的。"<" 会产生错误,因为解析器会把该字符解释为新元素的开始。"&" 也会产生错误,因为解析器会把该字符解释为字符实体的开始。

某些文本,比如JavaScript 代码,包含大量"<" 或"&" 字符。为了避免错误,可以将脚本代码定义为CDATA。CDATA 部分中的所有内容都会被解析器忽略。(见4.2)

五、引用:

https://www.360docs.net/doc/6410112656.html,/tech/5/14543.html

https://www.360docs.net/doc/6410112656.html,/rwm5366745/article/details/5848949

https://www.360docs.net/doc/6410112656.html,/bbs/forum.php?mod=viewthread&tid=1398

静态路由的配置命令

1、静态路由的配置命令: 例如: ip route 129.1.0.0 16 10.0.0.2 ip route 129.1.0.0 255.255.0.0 10.0.0.2 ip route 129.1.0.0 16 Serial0/0/0 注意:只有下一跳所属的的接口是点对点(PPP、HDLC)的接口时,才可以填写,否则必须填写。 2、在路由器Router A上配置: RouterA(config)# Interface FastEthernet0/0 RouterA(config-if)#Ip add 192.168.1.1 255.255.255.0 RouterA(config-if)#Interface s0/0/0 RouterA(config-if)#Ip add 221.237.46.2 255.255.255.0 RouterA(config-if)#encapsulation ppp RouterA(config-if)#exit RouterA(config)#Ip route 61.139.2.0 255.255.255.0 221.237.46.1 3、在路由器Router B上配置: RouterB(config)# Interface FastEthernet0/0 RouterB(config-if)#Ip add 61.139.2.68 255.255.255.0 RouterB(config-if)#Interface s0/0 RouterB(config-if)#Ip add 221.237.46.1 255.255.255.0 RouterB(config-if)#encapsulation ppp RouterB(config-if)#clock rate 64000

apache开启伪静态

如果需要开启伪静态支持: 打开apache的配置文件httpd.conf 1.把#LoadModule rewrite_module modules/mod_rewrite.so前面的#去掉。 2.找到 # # AllowOverride controls what directives may be placed in .htaccess files. # It can be “All”, “None”, or any combination of the keywords: # Options FileInfo AuthConfig Limit # AllowOverride None 把 AllowOverride None 改为 AllowOverride All 最后就是重启一下apache服务器使配置生效,这样就支持.htaccess文件了 1. 检测Apache是否支持mod_rewrite 通过php提供的phpinfo()函数查看环境配置,通过Ctrl+F查找到“Loaded Modules”,其中列出了所有 apache2handler已经开启的模块,如果里面包括“mod_rewrite”,则已经支持,不再需要继续设置。 如果没有开启“mod_rewrite”,则打开目录您的apache安装目录 “/apache/conf/” 下的 httpd.conf 文件,通过Ctrl+F查找到“LoadModule rewrite_module”,将前面的”#”号删除即可。 如果没有查找到,则到“LoadModule” 区域,在最后一行加入“LoadM odule rewrite_module modules/mod_rewrite.so”(必选独占一行),然后重启apache 服务器即可。 2.让apache服务器支持.htaccess 修改httpd.conf文件 Options FollowSymLinks AllowOverride None 改为 Options FollowSymLinks AllowOverride All 注意:除了要设置上面的地方以后,还得设置一下下面这个(网上很多资料都没有讲到这一块),否则你将会配制失败,把 DocumentRoot 后面的参数改为你本地网站的目录例如你网站的根目录为 D:/web/https://www.360docs.net/doc/6410112656.html, 则得设置为DocumentRoot "D:/web/https://www.360docs.net/doc/6410112656.html," 也就是修改当前目录 此步骤设置好后也得重启apache服务器才能生效 3.建立.htaccess 文件 新建 htaccess.txt 用记事本打开,点击文件–另存为,在文件名窗口输入”.htaccess”,然后点击保存。此文件得保存在网站的根目录

华为路由器静态路由配置命令

华为路由器静态路由配置命令 4.6.1 ip route 配置或删除静态路由。 [ no ] ip route ip-address { mask | mask-length } { interfacce-name | gateway-address } [ preference preference-value ] [ reject | blackhole ] 【参数说明】 ip-address和mask为目的IP地址和掩码,点分十进制格式,由于要求掩码32位中‘1’必须是连续的,因此点分十进制格式的掩码可以用掩码长度mask-length来代替,掩码长度为掩码中连续‘1’的位数。 interfacce-name指定该路由的发送接口名,gateway-address为该路由的下一跳IP地址(点分十进制格式)。 preference-value为该路由的优先级别,范围0~255。 reject指明为不可达路由。 blackhole指明为黑洞路由。 【缺省情况】 系统缺省可以获取到去往与路由器相连子网的子网路由。在配置静态路由时如果不指定优先级,则缺省为60。如果没有指明reject或blackhole,则缺省为可达路由。 【命令模式】 全局配置模式 【使用指南】 配置静态路由的注意事项: 当目的IP地址和掩码均为0.0.0.0时,配置的缺省路由,即当查找路由表失败后,根据缺省路由进行包的转发。 对优先级的不同配置,可以灵活应用路由管理策略,如配置到达相同目的地的多条路由,如果指定相同优先级,则可实现负载分担;如果指定不同优先级,则可实现路由备份。 在配置静态路由时,既可指定发送接口,也可指定下一跳地址,到底采用哪种方法,需要根据实际情况而定:对于支持网络地址到链路层地址解析的接口或点到点接口,指定发送接口即可;对于NBMA接口,如封装X.25或帧中继的接口、拨号口等,支持点到多点,这时除了配置IP路由外,还需在链路层建立二次路

静态路由配理解讲解

7.1.3 静态路由的主要特点 其实就因为静态路由的配置比较简单,决定了静态路由也包含了许多特点。可以说静态路由的配置全由管理员自己说了算,想怎么配就怎么配,只要符合静态路由配置命令格式即可,因为静态路由的算法全在管理员人思想和对静态路由知识的认识中,并不是由路由器IOS系统来完成的。至于所配置的静态路由是否合适,是否能达到你预期的目的那别当别论。在配置和应用静态路由时,我们应当全面地了解静态路由的以下几个主要特点,否则你可能在遇到故障时总也想不通为什么: l 手动配置 静态路由需要管理员根据实际需要一条条自己手动配置,路由器不会自动生成所需的静态路由的。静态路由中包括目标节点或目标网络的IP地址,还可以包括下一跳IP地址(通常是下一个路由器与本地路由器连接的接口IP地址),以及在本路由器上使用该静态路由时的数据包出接口等。 l 路由路径相对固定 因为静态路由是手动配置的,静态的,所以每个配置的静态路由在本地路由器上的路径基本上是不变的,除非由管理员自己修改。另外,当网络的拓扑结构或链路的状态发生变化时,这些静态路由也不能自动修改,需要网络管理员需要手工去修改路由表中相关的静态路由信息。 l 永久存在 也因为静态路由是由管理员手工创建的,所以一旦创建完成,它会永久在路由表中存在的,除非管理员自己删除了它,或者静态路由中指定的出接口关闭,或者下一跳IP 地址不可达。 l 不可通告性

静态路由信息在默认情况下是私有的,不会通告给其它路由器,也就是当在一个路由器上配置了某条静态路由时,它不会被通告到网络中相连的其它路由器上。但网络管理员还是可以通过重发布静态路由为其它动态路由,使得网络中其它路由器也可获此静态路由。 l 单向性 静态路由是具有单向性的,也就是它仅为数据提供沿着下一跳的方向进行路由,不提供反向路由。所以如果你想要使源节点与目标节点或网络进行双向通信,就必须同时配置回程静态路由。这在与读者朋友的交流中经常发现这样的问题,就是明明配置了到达某节点的静态路由,可还是ping不通,其中一个重要原因就是没有配置回程静态路由。 如图7-2所示,如果想要使得PC1(PC1已配置了A节点的IP地址10.16.1.2/24作为网关地址)能够ping通PC2,则必须同时配置以下两条静态路由,具体配置方法在此不作介绍。 图7-2 静态路由单向性示例 ①:在R1路由器上配置了到达PC2的正向静态路由(以PC2 10.16.3.2/24作为目 标节点,以C节点IP地址10.16.2.2/24作为下一跳地址);

伪静态_URLRewrite实例解析

Url Rewrite Filter实现页面伪静态化,简单实例及步骤1.首先新建一个Web Project 本例把它命名为:UrlRewrite,在创建的时候,选择勾选“Add JSTL libraries to WEB-INF/lib folder ”(注:因为项目中会用到jstl 核心标签库),然后再把urlrewrite-2.6.0.jar 导入到项目Bulid Path路径下,最后再加入struts框架。 2.配置web.xml文件 把如下代码加入到web.xml配置文件中,更多的配置可参考官方文档: UrlRewriteFilter org.tuckey.web.filters.urlrewrite.UrlRewriteFilter logLevel WARN UrlRewriteFilter /* 3.新增urlrewrite.xml文件 ^/([0-9]+).html$ /index.jsp?id=$1 在WEB-INF目录下新建一个Url Rewrite Filter的规则配置文件,默认命名为

实验五-静态路由配置

实验五-静态路由配置

南昌大学实验报告 学生姓名:学号:专业班级: 实验类型:□验证■综合□设计□创新 实验日期:实验成绩: 实验五静态路由配置实训 一、实验目的 ●进一步掌握路由器配置命令的使用 ●熟悉静态路由与默认路由的配置命令 ●熟悉tracert路由跟踪命令 二、实验设备及条件 ●运行Windows 操作系统计算机一台 ●Cisco 1840路由器两台,RJ-45转DB-9反 接线一根,串口线一根 ●超级终端应用程序或Cisco Packet Tracer 软件 三、实验原理 3.1 实训原理 路由器属于网络层设备,能够根据IP包头的信息,选择一条最佳路径,将数据包转发出去,以实现不同网段的主机之间的互相访问。选择最

佳路径的策略即路由算法是路由器的关键所在。 3.1.1 路由器的工作原理 为了完成路由选择工作,在路由器中保存着各种传输路径的相关数据——路由表(Routing Table),供路由选择时使用。打个比方,路由表就像我们平时使用的地图一样,标识着各种路线,路由表中保存着子网的标志信息、网上路由器的个数和下一个路由器的名字等内容。路由表可以是由系统管理员固定设置好的,也可以由系统动态修改,可以由路由器自动调整,也可以由主机控制。 路由表的项目一般含有五个基本字段:目的地址、网络掩码、下一跳地址、接口、度量。在进行路由选择时,路由器按照直接路由->特定主机路由->特定网络路由->默认路由的顺序讲IP 包头与路由表项进行匹配。 -直接路由项是指:该表项的“目的地址” 所在网络与路由器直接相连。 -间接路由项是指:该表项的“目的地址” 所在网络与路由器非直接相连。 -特定主机路由项是指:该表项的“目的地址”字段是某台特定主机的IP地址。

网络实验-3个路由器的静态路由配置实验

计算机网络实验(4B) 实验名称:路由器的基本操作及静态路由配置实验 实验目的:了解路由器的基本结构,功能,使用环境以及基本参数的配置。 实验要求: 1.配置路由器接口的IP地址。 2.设置静态路由。 3. 测试静态路由:ping IP 地址; trace IP 地址 4.写出实验报告 实验准备知识: 一、实验环境的搭建: ?准备 PC 机 2 台,操作系统为 Windows XP ; ?准备Huawei S2501E 路由器 3 台; ?路由器串口线(2对) ?交叉线(或通过交换机的直连线)网线 2条; ? Console电缆2条。 步骤:del 删除各个路由器原有的路由表 ?第一步:设置Router1 [Quidway]SYSNAME R1 ?[R1] interface Ethernet 0 #设置其IP地址 ?[R1-Ethernet0] ip address 10.0.0.2 255.255.255.0 shutdown undo shutdown #激活此以太网口!!(对此口配置了IP地址后用此命令) #进入串口Serial0视图 ?[R1-Ethernet0] interface serial 0 #设置其IP地址

?[R1-Serial0] ip address 20.1.0.1 255.255.255.0 shutdown undo shutdown #激活此串口!!(对此口配置了IP地址后用此命令) #设置链路层协议为PPP ?[R1-Serial0] link-protocol ppp #进入系统视图 ?[R1-Serial0] quit #添加静态路由 ?[R1] ip route-static 40.1.0.0 255.255.255.0 20.1.0.2 preference 60 ##添加静态路由(R2的以太网接口) [R1] ip route-static 50.1.0.0 255.255.255.0 20.1.0.2 preference 60 #保存路由器设置 ?[R1] save #重启路由器 ?[R1] reboot ?第二步:设置Router2 [Quidway]SYSNAME R2 #进入以太网接口视图: ?[R2] interface Ethernet 0 #设置其IP地址 ?[R2-Ethernet0] ip address 50.1.0.2 255.255.255.0 shutdown undo shutdown #激活此以太网口!!! #进入串口Serial0视图 ?[R2-Ethernet0] interface serial 0 #设置其IP地址 ?[R2-Serial0] ip address 20.1.0.2 255.255.255.0 shutdown undo shutdown #激活此串口!!(对此口配置了IP地址后用此命令) #设置链路层协议为PPP ?[R2-Serial0] link-protocol ppp #进入系统视图 ?[R2-Serial0] quit #进入串口Serial1视图 ?[R2] interface serial 1 #设置其IP地址 ?[R2-Serial1] ip address 30.1.0.1 255.255.255.0 shutdown

华为AR1220路由器配置参数实际应用实例解说一

华为AR1220路由器配置参数实际应用实例解说一 1. 配置参数 [GZ]dis cu [V200R001C00SPC200] //路由器软件版本,可从官方网站下载 # sysname GZ //路由器名字GZ ftp server enable //ftp 服务开通以便拷贝出配置文件备份 # voice # http server port 1025 //http undo http server enable # drop illegal-mac alarm # l2tp aging 0 # vlan batch 10 20 30 40 50 //本路由器设置的VLAN ID # igmp global limit 256 # multicast routing-enable //开启组播 #

dhcp enable //全局下开启DHCP服务然后在各VLAN上开启单独的DHCP # ip vpn-instance 1 ipv4-family # acl number 2000 rule 10 permit # acl number 2001 //以太网访问规则列表。 rule 6 permit source 172.23.68.0 0.0.0.255 //允许此网段访问外网 rule 7 permit source 172.23.69.0 0.0.0.255 //允许此网段访问外网 rule 8 permit source 172.23.65.0 0.0.0.3 //允许此网段的前三个IP访问外网rule 9 deny //不允许其他网段访问外网 # acl number 3000 //此规则并未应用 rule 40 permit ip source 172.23.65.0 0.0.0.255 destination 172.23.69.0 0.0.0.25 5 # acl number 3001//定义两个网段主机互不访问,学生不能访问65网段。 rule 5 deny ip source 172.23.65.0 0.0.0.255 destination 172.23.68.0 0.0.0.255 rule 10 deny ip source 172.23.68.0 0.0.0.255 destination 172.23.65.0 0.0.0.255 # aaa //默认视图窗口定义本地登录帐号和密码

伪静态在IIS和Apache下的区别

htaccess在IIS和Apache下的区别 ^t_(\d+).html$ t.php?id=$1 这个在apache下面可以,但在iis下的isapi_rewrite里可能就不对了 要改成 ^(.*)/t_(\d+).html$ $1/t.php\?id=$2 加了/,和对?进行了转义 Apache下 RewriteRule ^company/show_([0-9]+).html$ company.php?uid=$1 [L] //正确,可以不转义. ? RewriteRule ^company/show_([0-9]+)\.html$ company.php\?uid=$1 [L] //正确 RewriteRule ^/company/show_([0-9]+)\.html$ /company.php\?uid=$1 [L] //错误加了/就不行了 IIS下 RewriteRule ^(.*)/resume/([0-9]+)/show\.html$ /$1/person.php?pid=$2 [L] // 正确 RewriteRule ^(.*)/resume/([0-9]+)/show.html$ /$1/person.php?pid=$2 [L] //错误,.?必须转义RewriteRule /resume/([0-9]+)/show\.html$ /person.php\?pid=$1 [L] // 正确 RewriteRule resume/([0-9]+)/show\.html$ person.php\?pid=$1 [L] // 错误,必须加/ RewriteRule /resume/([0-9]+)/show\.html$ /person.php?pid=$1 [L] // 错误,?必须转义 总结 iis下必须加 /,.?必须转义 apache下不能加/ 附上htaccess的标记说明 flags ‘redirect|R [=code]‘ (强制重定向 redirect) 以http://thishost[:thisport]/(使新的URL成为一个URI) 为前缀的Substitution可以强制性执行一个外部重定向。如果code没有指定,则产生一个HTTP响应代码302(临时性移动)。如果需要使用在300-400范围内的其他响应代码,只需在此指定这个数值即可,另外,还可以使用下列符号名称之一: temp (默认的), permanent, seeother. 用它可以把规范化的URL反馈给客户端,如, 重写“/~”为“/u/”,或对/u/user加上斜杠,等等。注意: 在使用这个标记时,必须确保该替换字段是一个有效的URL! 否则,它会指向一个无效的位置! 并且要记住,此标记本身只是对URL加上 http://thishost[:thisport]/的前缀,重写操作仍然会继续。通常,你会希望停止重写操作而立即重定向,则还需要使用’L’标记. ‘forbidden|F’ (强制URL为被禁止的 forbidden) 强制当前URL为被禁止的,即,立即反馈一个HTTP响应代码403(被禁止的)。使用这个标记,可以链接若干RewriteConds以有条件地阻塞某些URL。 ‘gone|G’ (强制URL为已废弃的 gone) 强制当前URL为已废弃的,即,立即反馈一个HTTP响应代码410(已废弃的)。使用这个标记,可以标明页面已经被废弃而不存在了. ‘proxy|P’ (强制为代理 proxy)

华为路由器dhcp简单配置实例

华为路由器dhcp简单配置实例 session 1 DHCP的工作原理 DHCP(Dynamic Host Configuration Protocol,动态主机配置协议)是一个局域网的网络协议,使用UDP协议工作,主要有两个用途:给内部网络或网络服务供应商自动分配IP地址,给用户或者内部网络管理员作为对所有计算机作中央管理的手段,在RFC 2131中有详细的描述。DHCP有3个端口,其中UDP67和UDP68为正常的DHCP 服务端口,分别作为DHCP Server和DHCP Client的服务端口;546号端口用于DHCPv6 Client,而不用于DHCPv4,是为DHCP failover服务,这是需要特别开启的服务,DHCP failover是用来做“双机热备”的。 DHCP协议采用UDP作为传输协议,主机发送请求消息到DHCP服务器的67号端口,DHCP服务器回应应答消息给主机的68号端口,DHCP的IP地址自动获取工作原理及详细步骤如下: 1、DHCP Client以广播的方式发出DHCP Discover报文。 2、所有的DHCP Server都能够接收到DHCP Client发送的DHCP Discover报文,所有的DHCP Server都会给出响应,向DHCP Client发送一个DHCP Offer报文。DHCP Offer报文中“Your(Client) IP Address”字段就是DHCP Server 能够提供给DHCP Client使用的IP地址,且DHCP Server会将自己的IP地址放在“option”字段中以便DHCP Client 区分不同的DHCP Server。DHCP Server在发出此报文后会存在一个已分配IP地址的纪录。 3、DHCP Client只能处理其中的一个DHCP Offer报文,一般的原则是DHCP Client处理最先收到的DHCP Offer报文。DHCP Client会发出一个广播的DHCP Request报文,在选项字段中会加入选中的DHCP Server的IP地址和需要的IP地址。 4、DHCP Server收到DHCP Request报文后,判断选项字段中的IP地址是否与自己的地址相同。如果不相同,DHCP Server不做任何处理只清除相应IP地址分配记录;如果相同,DHCP Server就会向DHCP Client响应一个DHCP ACK 报文,并在选项字段中增加IP地址的使用租期信息。 5、DHCP Client接收到DHCP ACK报文后,检查DHCP Server分配的IP地址是否能够使用。如果可以使用,则DHCP Client成功获得IP地址并根据IP地址使用租期自动启动续延过程;如果DHCP Client发现分配的IP地址已经被使用,则DHCP Client向DHCPServer发出DHCP Decline报文,通知DHCP Server禁用这个IP地址,然后DHCP Client 开始新的地址申请过程。 6、DHCP Client在成功获取IP地址后,随时可以通过发送DHCP Release报文释放自己的IP地址,DHCP Server收到DHCP Release报文后,会回收相应的IP地址并重新分配。

CentOS6.0+apache2.4+php5.4.7+mysql5.5.27

CentOS6.0+apache2.4+php5.4.7+mysql5.5.27 一、安装前准备 1、安装编译工具及所需要库文件 yum install make apr* autoconf automake curl-devel gcc gcc-c++ gtk+-devel zlib-devel openssl openssl-devel pcre-devel gd gettext gettext-devel kernel keyutils patch perl kernel-headers compat* mpfr cpp glibc libgomp libstdc++-devel ppl cloog-ppl keyutils-libs-devel libcom_err-devel libsepol-devel libselinux-devel krb5-devel libXpm* freetype freetype-devel freetype* fontconfig fontconfig-devel libjpeg* libpng* php-common php-gd ncurses* libtool* libxml2 libxml2-devel 2、下载软件包(统一下载到/usr/local/src ) wget https://www.360docs.net/doc/6410112656.html,/Downloads/MySQL-5.5/mysql-5.5.27.tar.gz wget https://www.360docs.net/doc/6410112656.html,/files/v2.8/cmake-2.8.8.tar.gz wget https://www.360docs.net/doc/6410112656.html,/apache//httpd/httpd-2.4.3.tar.gz wget https://www.360docs.net/doc/6410112656.html,/apache//apr/apr-1.4.6.tar.gz # Apache库文件 wget https://www.360docs.net/doc/6410112656.html,/apache//apr/apr-util-1.4.1.tar.gz # Apache库文件 wget https://www.360docs.net/doc/6410112656.html,/distributions/php-5.4.7.tar.gz wget https://www.360docs.net/doc/6410112656.html,/project/mcrypt/Libmcrypt/2.5.8/libmcrypt-2.5.8.tar.gz #PHPlibmcrypt模块 wget ftp://https://www.360docs.net/doc/6410112656.html,/pub/software/programming/pcre/pcre-8.31.tar.gz 二、安装mysql 5.5.27 1、安装cmake # cd /usr/local/src # tar zxf cmake-2.8.8.tar.gz # cd cmake-2.8.8 # ./configure # make # make install 2、开始安装mysql # groupadd mysql # useradd -g mysql mysql -s /bin/false // 创建用户mysql并加入到mysql组,不允许mysql 用户直接登陆系统 # mkdir -p /data/mysql // 创建mysql 数据库存放目录 # chown -R mysql.mysql /data/mysql // 设置mysql 数据库权限 # mkdir -p /usr/local/mysql // 创建mysql 安装目录 # cd /usr/local/src # tar zxf mysql-5.5.27.tar.gz # cd mysql-5.5.27 # cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_DATADIR=/data/mysql -DSYSCONFDIR=/etc # make

华为静态路由配置实例

RA配置 System-view Sysname RA Interface ethernet 0/0 Ip address 192.168.1.1 255.255.255.0 Interface ethernet 0/1 Ip address 192.168.2.1 255.255.255.0 quit ip route-static 192.168.3.0 255.255.255.0 192.168.2.2 ip route-static 192.168.4.0 255.255.255.0 192.168.2.2 RB配置 System-view Sysname RB Interface ethernet 0/0 Ip address 192.168.3.1 255.255.255.0 Interface ethernet 0/1 Ip address 192.168.2.2 255.255.255.0 quit ip route-static 192.168.1.0 255.255.255.0 192.168.2.1 ip route-static 192.168.4.0 255.255.255.0 192.168.3.2 RC配置 System-view Sysname RC Interface ethernet 0/0 Ip address 192.168.3.2 255.255.255.0 Interface ethernet 0/1 Ip address 192.168.4.1 255.255.255.0 quit ip route-static 192.168.1.0 255.255.255.0 192.168.3.1 ip route-static 192.168.2.0 255.255.255.0 192.168.3.1

通过 Apache 配置 Rewrite 支持 .htaccess

【转】通过 Apache 配置 Rewrite 支持 .htaccess 2011-03-01 14:16 转载自分享 最终编辑ruhaole 1.首先确定您使用的 Apache 版本,及是否加载了 mod_rewrite 模块。及是否加载了 mod_rewrite 模块 . mod_rewrite 的是一个 Apache 模块,可使服务器操纵请求的网址。根据一系列规则对传入的网址进行检查,规则中包含一个正则表达式来检测特定的格式。如果在地址中发现了一个格式,并且满足适当的条件,该格式就会被一个替代的字符串或者是动作取代。 Apache 1.x 的用户请检查 conf/httpd.conf 中是否存在如下两段代码: 清单 1. Apache 1.x 的加载模块代码 LoadModule rewrite_module libexec/mod_rewrite.so AddModule mod_rewrite.c Apache 2.x 的用户请检查 conf/httpd.conf 中是否存在如下一段代码: 清单 2. Apache 2.x 的加载模块代码 LoadModule rewrite_module modules/mod_rewrite.so 如果存在,那么在配置文件(通常就是 conf/httpd.conf)中加入如下代码。此时请务必注意,如果网站使用通过虚拟主机来定义,请务必加到虚拟主机配置,即 中去,如果加在虚拟主机配置外部将可能无法使用,改好后将 Apache 重启。稍后再解释这段代码的意思 Apache配置: 支持httpd.conf 配置和目录 .htaccess配置 启用rewrite # LoadModule rewrite_module modules/mod_rewrite.so 去除前面的 # LoadModule rewrite_module modules/mod_rewrite.so 启用.htaccess AllowOverride None 修改为:AllowOverride All ----------------------------------------------------------

路由器的基本配置与静态路由配置

郑州大学信息工程学院实验报告 年级专业班 姓名学号 指导教师成绩 2009年月日 实验名称实验三路由器的基本配置与静态路由配置 【实验目的】 1.掌握路由器命令行各种操作模式的区别,以及模式之间的切换。 2.掌握路由器的全局的基本配置。 3.掌握路由器端口的常用配置参数。 4.查看路由器系统和配置信息,掌握当前路由器的工作状态。 5.掌握通过静态路由方式实现网络的连通性。 【背景描述】 背景描述1 你是某公司新进的网管,公司要求你熟悉网络产品,公司采用全系列锐捷网络产品,首先要求你登录路由器,了解、掌握路由器的命令行操作。 背景描述2 你是某公司新进的网管,公司有多台路由器,为了进行区分和管理,公司要求你进行路由器设备名的配置,配置路由器登录时的描述信息。 背景描述3 你在一家网络工程公司就职,负责组建一个省级广域网络。现项目经理要求你根据实际网络需求,对路由器的端口配置基本的参数。 原理说明:锐捷路由器接口Fastethernet接口默认情况下是10M/100M自适应端口,双工模式也为自适应,并且在默认情况下路由器物理端口处于关闭状态。路由器提供广域网接口(serial高速同步串口),使用V.35线缆连接广域网接口链路。在广域网连接时一端为DCE(数据通信设备),一端为DTE(数据终端设备)。要求必须在DCE端配置时钟频率(clock rate)才能保证链路的连通。在路由器的物理端口可以灵活配置带宽,但最大值为该端口的实际物理带宽。 背景描述4 你是某公司新网管,第一天上班时,你必须掌握公司路由器的当前工作情况,通过查看路由器的系统信息和配置信息,了解公司的设备和网络环境。 背景描述5 假设校园网通过1台路由器连接到校园外的另1台路由器上,现要在路由器上做适当配置,实现校园网内部主机与校园网外部主机的相互通信。静态路由在拓扑结构简单的网络中,网管员通过手工的方式配置本路由器未知网段的路由信息,从而实现不同网段之间的连接。 【实现功能】 1.熟练掌握路由器的命令行操作模式 2.配置路由器的设备名称和每次登录路由器时提示相关信息。

华为 浮动静态路由路径备份配置实例

华为浮动静态路由路径备份配置实例 作者:救世主220 实验日期:2015.7.3 实验拓扑如下: AR1配置: [AR1]dis current-configuration [V200R003C00] # sysname AR1 # interface GigabitEthernet0/0/0 ip address 100.1.1.1 255.255.255.0 # interface GigabitEthernet0/0/1 ip address 10.0.21.1 255.255.255.0 # interface LoopBack0 ip address 1.1.1.1 255.255.255.0 ospf network-type broadcast # ospf 1 router-id 1.1.1.1 import-route direct area 0.0.0.0 network 1.1.1.1 0.0.0.0 network 10.0.21.1 0.0.0.0 # ip route-static 3.3.3.0 255.255.255.0 100.1.1.2 preference 10 ip route-static 10.0.23.0 255.255.255.0 100.1.1.2 preference 10

注意:AR1上g0/0/0 断开前后AR1路由表变化 AR2配置: [AR2]dis current-configuration [V200R003C00] # sysname AR2 # interface GigabitEthernet0/0/0 ip address 100.1.1.2 255.255.255.0 #

H3C IPv6 静态路由配置

操作手册 IP路由分册 IPv6 静态路由目录 目录 第1章 IPv6静态路由配置......................................................................................................1-1 1.1 IPv6静态路由简介.............................................................................................................1-1 1.1.1 IPv6静态路由属性及功能........................................................................................1-1 1.1.2 IPv6缺省路由..........................................................................................................1-1 1.2 配置IPv6静态路由.............................................................................................................1-2 1.2.1 配置准备..................................................................................................................1-2 1.2.2 配置IPv6静态路由...................................................................................................1-2 1.3 IPv6静态路由显示和维护..................................................................................................1-2 1.4 IPv6静态路由典型配置举例(路由应用).........................................................................1-3 1.5 IPv6静态路由典型配置举例(交换应用).........................................................................1-5

华为三层交换机配置方法、命令及实例

华为三层交换机配置方法(1) (2008-07-21 11:27:34) 转载 标签: 分类:工作汇报 杂谈 本文以河南平临高速所使用的华为华三通信的H3C S3600-28P-SI为例,配置前首先要确定型号后缀是SI还是EI,EI的支持所有协议,SI的不支持OSPS动态协议,因此SI配置路由时可以使用静态协议和RIP协议,具体配置如下: system-view //进入系统视图 [H3C]display current-configuration //显示当前配置 //以下开始配置 //第一步:划分VLAN,并描述 vlan 1 description local-S3600 vlan 2 description link-to-wenquan vlan 3 description link-to-ruzhou vlan 4 description link-to-xiaotun vlan 5 description link-to-baofeng vlan 6 description link-to-pingxi vlan 7 description link-to-pingnan vlan 8

description Uplink-to-Putian vlan 9 description link-to-pingxicentre //第二步:给VLAN 划网关 interface Vlan-interface2 description link to wenquan ip address 10.41.77.41 255.255.255.192 interface Vlan-interface3 description link to ruzhou ip address 10.41.77.105 255.255.255.192 interface Vlan-interface4 description link to xiaotun ip address 10.41.77.169 255.255.255.192 interface Vlan-interface5 description link to baofeng ip address 10.41.77.233 255.255.255.192 interface Vlan-interface6 description link to pingxi ip address 10.41.78.41 255.255.255.192 interface Vlan-interface7 description link to pingnan ip address 10.41.78.105 255.255.255.192 interface Vlan-interface8 description uplink to putian ip address 10.41.244.102 255.255.255.252 interface Vlan-interface9 description link to pingxicentre ip address 10.41.80.233 255.255.255.192

相关文档
最新文档