IIS7下使用URLRewriter的配置
2011-04-30 10:18
183 查看
引用Lixy的博文使用MicrosoftURLRewriteModuleforIIS7.0修改WEB.CONFIG即可实现*.HTML伪静态无需修改应用程序映射:在IIS5和IIS6时代,我们使用URLREWRITING可实现URL重写,使得WEB程序实现伪静态,但默认情况下只能实现.ASPX的伪静态,如果要实现伪静态*.HTML的页面,需要将ISAPI里面的*.HTML应用程序映射改为.NET的ISAPI。但在IIS7时代,这一切已经变得非常简单了,您在WEB.CONFIG中就可以管理这一切了。
可我今天改的程序是我以前写的,在II6中配置实现的伪静态,现在在IIS7中跑也不想去重配置伪静态规则了,所就想在IIS7中实现URLRewriter的配置。
一:和IIS6一样在<configSections>节点下配置
<configuration>
<configSections>
<sectionname="RewriterConfig"type="URLRewriter.Config.RewriterConfigSerializerSectionHandler,URLRewriter"/>
</configSections>
<RewriterConfig>
<Rules>
<RewriterRule>
<LookFor>~/about/feedback\.html</LookFor>
<SendTo><![CDATA[~/About/FeedBack.aspx]]></SendTo>
</RewriterRule>
</Rules>
</RewriterConfig>
<httpModules>
<addname="ModuleRewriter"type="URLRewriter.ModuleRewriter,URLRewriter"/>
</httpModules>
二:在IIS7中将ISAPI里面的*.HTML应用程序映射改为.NET的ISAPI
在“处理程序映射”中添加脚本映射配置如下
点击确定的时候会自动在Web.Config中添加
resourceType="Unspecified"preCondition="classicMode,runtimeVersionv2.0,bitness32"/>
</handlers>
[/code]
三:如我的站点为:http://192.168.1.3/则http://192.168.1.3/about/feedback.html是可以正常打开的也就说我们伪静态配置好了,
但可当你打开原本就是.html文件(如我站点下的stiemap.html)当我打开http://192.168.1.3/sitemap.html时,问题出现了:
可我今天改的程序是我以前写的,在II6中配置实现的伪静态,现在在IIS7中跑也不想去重配置伪静态规则了,所就想在IIS7中实现URLRewriter的配置。
一:和IIS6一样在<configSections>节点下配置
<handlers> <removename="WebServiceHandlerFactory-Integrated"/> <removename="ScriptHandlerFactory"/> <removename="ScriptHandlerFactoryAppServices"/> <removename="ScriptResource"/> <addname="HtmlHandler"path="*.html"verb="*"modules="IsapiModule"scriptProcessor="C:\Windows\Microsoft.NET\Framework\v2.0.50727\aspnet_isapi.dll"
[/code]
“/”应用程序中的服务器错误。
没有为扩展名“.html”注册的生成提供程序。可以在machine.config或web.config中的
<compilation><buildProviders>节注册一个。请确保所注册的提供程序具有包含值“Web”或“All”的
BuildProviderAppliesToAttribute属性。
这时要做如下配置:<compilationdebug="true"> <!--加上此节点,保证原本就是.html类型的文件能正常访问--> <buildProviders> <addextension=".html"type="System.Web.Compilation.PageBuildProvider"/> </buildProviders> </compilation>
相关文章推荐
- (win7)IIS7下配置php5.3 (5.3以后的版本只可以使用FastCGI)
- 在全新安装的IIS7下搭建网站,访问页面时出现错误信息,配置错误: 不能在此路径中使用此配置节。
- IIS7下的伪静态配置
- 使用Advanced Installer制作IIS安装包(二:配置安装包依赖项和自定义dll)
- IIS下的PHP配置(使用dreamweaver)
- “在应用程序级别之外使用注册为 allowDefinition=’MachineToApplication’ 的节是错误的。如果在 IIS 中没有将虚拟目录配置为应用程序,则可能导致此错误”的解决方法
- windows7下IIS的安装配置. windows7 IIS
- VS2012[Web应用程序项目***已配置为使用IIS。无法访问IIS元数据库]
- 如何配置Win2003的NTFS文件系统权限及IIS权限设置参考(供使用Win2003服务器参考)(转)
- Windows 7下OpenGL如何配置(网上有教程,这里做部分修改,也是为了方便自己以后使用)
- Windows 7下如何安装和配置IIS 7和ASP
- 使用Advanced Installer制作IIS安装包(二:配置安装包依赖项和自定义dll)
- IIS7下配置SSAS通过HTTP远程连接
- Web应用程序项目XX已配置为使用IIS
- php使用iis服务器怎么配置zend studio的代码调试功能
- IIS7下配置SSAS通过HTTP远程连接
- 如何配置证书服务器以便在 IIS 上与 SSL 结合使用
- 配置和使用IIS服务器
- iis7下配置php出现404.17错误的解决办法
- 特殊情况下产生的”在应用程序级别之外使用注册为 allowDefinition='MachineToApplication' 的节是错误的。如果在 IIS 中没有将虚拟目录配置为应用程序,则可能导致此错误。”