asp.net不用设置iis实现url重写 类似伪静态路由

网络编程 2025-03-28 23:06www.168986.cn编程入门

在无法设置IIS或无法获取IIS操作权限的环境中,当我们无法使用ISAPI扩展但又想要实现类似静态化的程序访问方式时,有一种解决方案可以为我们排忧解难。我们的目标是通过简单的调整,让从“show.aspx?id=12345”这样的形式转变为“12345.html”的访问方式,同时支持任意扩展名甚至无扩展名。

我们需要下载并安装URLRewriter。你可以通过以下链接进行下载:

【下载链接】:

安装完成后,你将在bin目录下找到URLRewriter.dll文件。接下来,我们可以开始实施了。

第一步,将urlrewrite.dll文件下载到你的web程序目录中。你可以将其放置在任何你喜欢的位置,我选择将其放在bin文件夹内。

第二步,添加引用。在你的项目中引入刚刚下载的urlrewrite.dll文件。

一、配置web.config文件

在``节点下,我们需要加入``部分,并指定配置节"RewriterConfig"的处理程序类。这个类存在于bin目录下的URLRewriter.dll文件中。代码如下:

```xml

...

```

二、HTTP处理程序配置

接下来,在web.config文件中的``节点下,我们需要加入一些代码来处理HTTP请求。这些代码将文件扩展名为.html和任意扩展名的文件的所有HTTP请求映射到URLRewriter.RewriterFactoryHandler类。注意,这些处理的顺序很重要,因为会按照从上到下的顺序执行。代码如下:

```xml

...

```

```xml

...

~/(.+).html

~/Shownews.aspx?ShowID=$1

~/(.+)

~/blog.aspx?UserName=$1

```四、效果展示和注意事项在实际应用中,当访问

====================

一、理解正则表达式参数

--

-

``

``

`(.)/TestUrlRe/file(.)/(.)\.html`

`../WebForm1.aspx?id=$2&type=$3`

``

``

`(.)/TestUrlRe/t(.)/(.)\.html`

`../WebForm1.aspx?tid=$2&ttype=$3`

``

``

在这里,我们设定了两个规则,将特定的旧URL模式映射到新的URL模式,其中捕获的参数被用于构建新的URL。

三、在网页程序中应用

-

`新闻标题`

四、解决发布问题

--

上一篇:php语言的7种基本的排序方法 下一篇:没有了

Copyright © 2016-2025 www.168986.cn 狼蚁网络 版权所有 Power by