`
willeager
  • 浏览: 95249 次
  • 性别: Icon_minigender_1
  • 来自: 福建
社区版块
存档分类
最新评论

如何在IIS环境下配置Rewrite规则

阅读更多

注:转自互联网。

 

URL 静态化可以提高搜索引擎抓取,开启本功能需要对 Web 服务器增加相应的 Rewrite 规则,且会轻微增加服务器负担。本教程讲解如何在 IIS 环境下配置各个产品的 Rewrite 规则。

一、首先下载 Rewrite.zip 的包,解压到任意盘上的任意目录。

点击这里下载 IIS Rewrite 组件

将下载的 IIS Rewrite 组件解压,放到适当的目录(如 C:\Rewrite)下。

在本机上测试发现:只能放到C盘目录(非根目录,文件夹名称非Rewrite亦可)

二、配置方法

在 IIS 管理器里选择网站,右键选择“属性”,如下图所示:

在弹出的窗口里选择“ISAPI筛选器”

上图中点击“添加”,在弹出的窗口里“筛选器名称”填写“rewrite”

上图界面中点击“浏览”,选择下载解压后的 Discuz! Rewrite 规则目录下的 Rewrite.dll 文件

浏览完毕点击“确定”

添加完毕点击“确定”

重新启动 IIS

当被访问后

重新选择该站点 => 右键“属性”=> “ISAPI 筛选器”,如果看到状态为向上的绿色箭头,就说明 Rewrite 模块安装成功了。

IIS Rewrite 规则设置

解压后的 IIS Rewrite 组件目录(如 C:\Rewrite)中,有一个 httpd.ini 文件,将相应规则写入到这个文件中即可。




使用httpd.ini文件基于ISAPI Rewrite重写URL路径

使用ISAPI Rewrite与Apache Rewrite是有区别的,主要是URL重写规则细节上,ISAPI[一般是windows系统]重写需要使用httpd.ini文件,而Apache[一般是unix系统]则使用.htaccess文件,通过对必优博客 URL重写实例谈谈使用httpd.ini文件基于ISAPI Rewrite重写URL路径。目前必优博客使用的是wordpress程序,虽然前台已经全部重新架构 ,但URL路径还是使用原有简单的URL,如一篇文章的URL路径:http://www.biuuu.com/?p=1119 ,分类使用?cat=162等。

本文以httpd.ini重写文章URL路径为例,其它URL重写原理一样。

重写前URL路径:http://www.biuuu.com/p1119.html[这是需要实现的URL地址]
重写后URL路径:http://www.biuuu.com/?p=1119[这也是当前的URL地址]

一,新建httpd.ini文件

二,打开httpd.ini文件并增加如下重写规则

  1. [ISAPI_Rewrite]
  2. RewriteRule ^/p([0-9]+)\.html /index\.php\?p=$1 [L]

注意其中的一些细节,反斜杠\部分,这个非常重要[或许你会漏掉这句话,但如果你看到了将会省很多的调试时间],对于特殊字符要使用反斜杠\。

  1. RewriteRule ^/p([0-9]+)\.html /index\.php\?p=$1 [L]

其规则为匹配使有p开头的字符,其中参数部分$1只能是数字[0-9],并以.html结束,如p1119.html,就会匹配为index.php?p=1119,这样程序就能正常的读取ID为1119的文章。

三,上传到你空间的根目录

四,开始调试,调试过程可多刷新页面

同样的URL重写,如果是在apache下的.htaccess则使用如下语句:

  1. RewriteEngine on
  2. RewriteRule ^p([0-9]*).html$ index.php?p=$1 [L]

现在来对比这两者的区别:

  1. ISAPI Rewrite:
  2. RewriteRule ^/p([0-9]+)\.html /index\.php\?p=$1 [L]
  1. Apache Rewrite:
  2. RewriteRule ^p([0-9]*).html$ index.php?p=$1 [L]

区别就是一些反斜杠,这对于调试非常重要,其它具体的知识大家可参考相应的文档,简单实现你的ISAPI Rewrite重写URL路径。

分享到:
评论

相关推荐

    IIS6下的网站配置Rewrite伪静态组件教程(iis怎样配置Rewrite伪静态)

    【IIS6下的网站配置Rewrite伪...总之,配置IIS6下的Rewrite伪静态组件涉及下载组件、设置ISAPI筛选器以及编写和放置Rewrite规则。完成这些步骤后,你的动态网站就可以显示为静态友好的URL,从而提升SEO效果和用户体验。

    ecshop2.72 在IIS7环境下配置Rewrite (URL 静态化)规则工具及方法

    本文将详细介绍如何在IIS7环境下为ECSHOP配置Rewrite规则,实现URL静态化。 首先,我们需要理解URL重写(Rewrite)的概念。URL重写是通过服务器端的技术手段,将用户请求的实际动态URL转换为看起来像静态页面的URL...

    iis_rewrite.zip

    (如果没有选择此目录的 Rewrite.dll文件,请手工添加此目录下的httpd.ini中的Rewrite规则); 2.重新启动IIS; 3.进入记事狗后台->系统设置->URL地址设置,选择Rewrite方式为 标准Rewrite模式; 4.URL标准静态化...

    IIS虚拟机用到的Rewrite.dll组件

    在IIS中,虽然主要的配置是在IIS管理控制台完成,但`httpd.ini`文件提供了一种直接编辑和应用重写规则的方法,特别适用于开发者或高级用户。 **创建和管理重写规则** 在`httpd.ini`文件中,你可以添加一系列规则来...

    win2019下IIS部署反向代理及Rewrite包

    本文将详细介绍如何在IIS上设置反向代理和Rewrite规则,并解释这两个概念。 **反向代理**: 反向代理是一种网络架构模式,其中客户端请求被发送到一个代理服务器,然后代理服务器转发请求到实际的服务提供者,而...

    IIS rewrite

    本文将深入探讨IIS Rewrite的主要功能、应用场景及配置方法。 **一、IIS Rewrite 模块介绍** IIS Rewrite 模块是基于Apache mod_rewrite的一个类似实现,它允许服务器根据预定义的规则对HTTP请求的URL进行重写。...

    64位 wi8 iis7 isapi_rewrite 伪静态配置软件亲测可用

    rewrite 伪静态配置软件亲测可用”指的是在64位操作系统的Windows 8 (wi8) 和Windows Server 2012 (win2012) 上,使用IIS7 (Internet Information Services 7) 配合ISAPI_Rewrite模块进行的伪静态设置。这个配置软件...

    IIS配置支持伪静态 ISAPI Rewrite

    ### IIS配置支持伪静态与ISAPI Rewrite详解 #### 一、引言 在Web开发领域,为了提高用户体验和搜索引擎优化(SEO),伪静态技术被广泛应用于网站开发中。通过将动态URL转换为静态URL的形式,不仅可以提升网站的...

    IIS的URL美化组件Rewrite.dll安装及使用说明

    **IIS URL美化组件Rewrite....总之,IIS的URL重写组件Rewrite.dll是构建高性能、高可用性网站的重要工具,通过合理的规则配置,能极大地提升网站的专业性和用户体验。在实践中,不断学习和探索,你会发现更多可能性。

    HDwiki 5.1下iis的rewrite规则分享

    一、注意事项: 1、本功能对服务器环境有特殊要求,独立主机用户需要对 Web 服务器增加相应的 Rewrite 规则,因此需要服务器权限才可使用。对于虚拟主机用户,您需要向您的空间服务商进行咨询:空间是否支持 Rewrite...

    IISURL伪静态下载 rewrite_2.0_rtw_x64.msi

    在网站的“管理工具”下,找到“URL重写”,创建新的规则以满足特定的URL转换需求。 **重写规则** IIS URL重写模块支持通过XML格式的web.config文件来定义重写规则。规则包括匹配模式、条件和动作等,可以使用正则...

    IIS Urlrewrite2

    2. **添加规则**:在IIS Manager中选择目标站点,然后在“管理服务”下找到“URL重写”,点击“添加规则”按钮,选择适当的模板或自定义规则。 3. **编写规则**:在新建规则界面,定义输入和输出的URL模式,以及...

    iis rewrite.rar

    ### 配置Rewrite规则 IIS Rewrite组件的规则定义通常在Web.config文件中进行。每个规则由一组条件和操作组成,条件用于判断是否满足重写规则,操作则定义了满足条件后的URL处理方式。以下是一个简单的示例: ```...

    IIS 中使用rewrite插件进行url重写

    在IIS(Internet Information Services)中,URL重写是一项关键功能,它允许网站管理员通过配置规则来改变用户请求的URL,以实现优化网址结构、隐藏真实路径或进行SEO友好等目的。IIS URL Rewrite模块是一个强大的...

    IIS Rewrite

    IIS Rewrite的配置主要通过Web.config文件进行,其中包含了Rewrite规则。例如,下面的规则将把所有以".aspx"结尾的请求转换为".html": ```xml <rewrite> *\.aspx$" /> <action type="Rewrite" url="{R:0}....

    iis6Rewrite.zip

    这表明该文件可能包含用于在IIS6环境下实现URL重写或伪静态功能的配置文件、模块或者指南。URL重写是一种优化网站技术,它可以将动态URL转换为看起来更简洁、更易于理解和搜索引擎友好的静态URL格式。 在IIS6中,...

    iis urlrewrite文件

    虽然IIS URL Rewrite的配置通常是在IIS管理器中进行,但如果你在Apache环境中工作,会使用httpd.conf配置文件。在这个文件中,你可以使用类似Apache的RewriteEngine、RewriteRule和RewriteCond指令来实现URL重写。...

Global site tag (gtag.js) - Google Analytics