• ASP.NET 使用 IIS URL Rewrite 模块实现伪静态


    在做网站的时候为了让网页地址友好一点经常需要使用到 URL 重写,比如 https://www.baidu.com/a?b=1&c=2 这样的地址就不是很友好,也不方便记忆,如果是 https://www.baidu.com/a/1/2 这样的地址就比较好记了,那么在 IIS 下如何实现这种功能呢?IIS 默认是没有安装 URL 重写工具的,所以必须要自己下载安装。

    URL Rewrite 模块的优点就是不需要在项目中做任何操作就可以实现重写,这样我们就不需要对原有的项目代码进行调整了。

    ASP.NET 网站实现伪静态需要以下条件: 

    1、IIS 7.0(目前 Url Rewrite Module 仅支持 IIS 7 以上的版本); 
    2、Url Rewrite Module

    官方地址:URL Rewrite 下载

    1、安装 Url Rewrite Module

    从官网选择对应的版本下载好后安装到服务器上。

    官方有中文版的安装包所以我下载了简体中文的安装包。

    安装完成后,在 IIS 的管理界面会多出来 URL 重写模块。

    2、配置 URL Rewrite

    进入 URL 重写模块后点击『添加规则』。

    新建一个入站的空白规则,输入如下内容。

    URL Rewrite 模块也提供了测试功能,点击『测试模式』即可重写规则的测试正则表达式是否正确。

    配置好以后会在 web.config 文件的 system.webServer 节点下多出如下内容:

    <rewrite>
      <rules>
        <rule name="Rewrite to article.aspx">
          <match url="^article/([0-9]+)/([_0-9a-z-]+)" />
          <action type="Rewrite" url="article.aspx?id={R:1}&title={R:2}" />
        </rule>
      </rules>
    </rewrite>

     3、测试重写规则

     要测试规则是否正确重写 URL,打开 Web 浏览器并请求以下 URL:

    http://localhost/article/234/hello

    如果请求成功了证明重写生效了。

    4、其他功能

    URL Rewrite 模块还提供了很多高级的功能,比如忽略某些 URL 请求、定义出站规则等等,大家可以查看官方给出的实例进行使用。

    官方文档:https://docs.microsoft.com/en-us/iis/extensions/url-rewrite-module/url-rewrite-module-video-walkthrough

  • 相关阅读:
    一个转角--->程序猿
    一个转角--->程序猿
    科技申报项目总结
    科技申报项目总结
    mysql事务
    mysql事务
    浅谈SSM框架
    浅谈SSM框架
    Spring-IOC(解释依赖注入DI)
    Maven基础知识,如何搭建Maven环境,Maven常用命令,如何搭建一个Maven项目
  • 原文地址:https://www.cnblogs.com/weisenz/p/2501857.html
Copyright © 2020-2023  润新知