IIS配置页面重写(配合插件url-rewrite2去除页面后缀名)
本来一直想了解浏览器地址栏中url后缀名如何去除,今天正好抽空折腾一下。
下面参考一位博友文章(出处见文章末尾),基于windows平台(windows7)详细介绍。
1. URL重写组件url-rewrite2
微软官方下载地址:http://www.iis.net/downloads/microsoft/url-rewrite
也可直接点击下载:url-rewrite.zip
2. 暂停IIS,安装组件
在安装组件之前,先暂停IIS。
目前(2017/10/30)该组件安装集成于Microsoft Web Platform Installer(下文简称Platform Installer)。若您已经安装过Platform Installer,双击运行url-rewirte.exe后可能出现未弹出安装界面(提示)情况,此时在开始菜单中找到Platfom Installer,并打开,即可进入安装界面。
3. 重启IIS,安装组件
在IIS中找到你要设置的网站,点击选中,在右侧的工具中可看到URL Rewrite功能 ,若重启IIS后依然没有看到该功能,请重启系统。
3. .htaccess
在网站根目录下新建一个 .htaccess 文件,它是url-rewrite2组件相关的配置文件,用于定义重写规则。在其中写入如下文本信息:
RewriteEngine on #将RewriteEngine引擎设置为on,就是让url重写生效;
RewriteBase/ #用于设定重写的基准URL,注意"RewriteBase"和"/"之间没有空格
RewriteRule ^index\.php$
RewriteRule ^(.*)/([\w\-]+)$ $1/$2.php
其中详细规则及解释参考如下文章:
.htaccess技巧: URL重写(Rewrite)与重定向
4. 导入规则
选中URL Rewrite功能,在右侧找到【导入规则..】功能,并点击。
选择你的.htaccess文件,然后点击【导入】按钮,最后点击右侧的【应用】按钮,就可以成功配置伪静态了。
5. 结语
至此已经完成了IIS下页面重写规则。需要说明的是,页面重写规则可理解为服务器辅助补全/修饰URL。比如本文中书写的规则
RewriteRule ^(.*)/([\w\-]+)$ $1/$2.php
将自动补全地址栏中的后缀名.php。
若用户在地址栏中输入 localhost/test/pageName ,则实际路径为 localhost/test/pageName.php。
原文作者:黄聪
出处:http://www.cnblogs.com/huangcong/
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。