我还没有看到任何专门针对这个特定问题的问题。
当使用 URL 路由时,请求进入 IIS,然后被路由到 Aspx 页面。例如,站点:www.site.com/products 可以将请求路由到 wwwroot/inetpub/mysite/pages/productsPage.aspx
重要的是要注意页面是路由的,而不是重定向的。
请注意,要使 URL 在 IIS 6 中正常工作,必须设置通配符扩展,将所有资源路由到 Asp.Net(然后,Asp.Net 将把静态资源交回)这在此处记录: http:// blog.codeville.net/2008/07/04/options-for-deploying-aspnet-mvc-to-iis-6/
似乎 IIS 在将内容发送回时不会对内容进行 GZip。我已按照此处的说明进行操作: http ://www.kavinda.net/2007/02/17/how-to-enable-http-compression-iis6.html
启用 IIS 6 压缩。
知道为什么 Http 压缩似乎不起作用吗?它似乎在我服务器上的其他站点上运行良好。只是带有 URL 路由的那个不起作用
使用类似这样的方法使您的 ASP.NET 应用程序 gzip 其输出本身。
最好的办法是使用Bel Lowery 的HttpCompress。它是一个简单、免费且开源的 HttpModule,用于处理页面的 HTTP 压缩。您可以将它与 IIS Http 压缩选项结合使用。
我将 HttpCompress 与 Vici MVC 结合使用,它运行流畅!
我已经在网上搜索了几个小时,要么使用 HttpCompress,要么购买商业项目(Port80 软件有解决方案),要么编写我自己的 HttpModule。
PS:IIS根据文件扩展名做HTTP压缩。这就是为什么它不适用于使用 URL 路由的网站。
你试过这种方式吗? 微软 KB322603
要使 IIS 5.0 能够压缩 .aspx 页面,请执行以下步骤:
很抱歉讨论得太晚了,但由于我(仍然)必须在 MVC 站点上启用 IIS 6 压缩,所以这是我发现的 IIS 6 本机解决方案:包含在压缩扩展
axd
中。这假设您正确启用了来自 .Net framework 4 的 IIS 6 扩展少 URL 支持。我已经直接在 IIS Metabase 中完成了。(这里解释;
%windir%\systems32\inetsrv\metabase.xml
。在编辑它之前,停止 IIS 或在 IIS 中启用“元数据库热编辑”,并备份它。)从我的配置中提取:
理性:在幕后,无扩展的 URL 通过调用
eurl.axd
页面在 IIS 6 中工作。有关使用 fx4 的 IIS6 中的无扩展 URL 的更深入解释,请参阅此博客。