我正在开发一个asp.net网站(运行.net 3.5 SP 1)并使用UrlRewriter.Net( http:/ /urlrewriter.net/ )urlrewriting。

该站点是Windows 2003服务器上的hostet,包含所有Service Pack等等。

它运行IIS 6。

为了启用url重写,我为*设置了通配符处理程序,这意味着所有请求都是通过asp.net引擎发送的。

我还启用了IIS压缩功能 - 当我使用非重写的网址时,这种方式可以正常工作。 但是它不会压缩重写的页面。

我已经添加了aspx,ashx和asmx作为metabase.xml的扩展,并设置了适当的压缩级别(9)等。

重写的网页有.htm扩展名,所以不应该因为扩展名错误。

为什么这不起作用的任何想法?

有帮助吗?

解决方案

可能是因为通配符,IIS将请求发送到ASP.NET,进一步处理页面生成等。压缩发生在管道的后期,所以它被绕过......

其他提示

不幸的是,我没有足够的代表留下评论。

如果问题是压缩在管道中的错误时间发生,我希望它对.aspx也不起作用(因为一切都是通过asp.net处理程序发送的)

话虽如此,我想它可以在管道中更早地处理.aspx,因为我相信通配符处理程序是一个“最后的手段”。不幸的是,在IIS 6上没有改变处理程序的优先级: - (

我想我必须向管理员询问带有IIS 7的Windows 2008服务器。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top