Skip to content
This repository

Instantly makes your .net website faster by reducing the number and size of requests with almost no effort.

branch: master
Octocat-spinner-32 .nuget Closed #185 upgrading ajaxmin to fix html reset June 26, 2012
Octocat-spinner-32 ExternalBinaries getting razor and web pages from nuget June 12, 2012
Octocat-spinner-32 RequestReduce.Facts.Integration get build and project working in vs 2012 March 08, 2013
Octocat-spinner-32 RequestReduce.Facts get build and project working in vs 2012 March 08, 2013
Octocat-spinner-32 RequestReduce.SampleWeb some minor cleanup and update release notes July 30, 2012
Octocat-spinner-32 RequestReduce.SampleWeb35 fix allcompile warings. Ahhh no more yellow. June 10, 2012
Octocat-spinner-32 RequestReduce.SassLessCoffee closed #212 bug where beginRequest throws 401 on dashboard and flush … July 30, 2012
Octocat-spinner-32 RequestReduce.SqlServer Corrected misplaced character and re-indented XML. January 15, 2013
Octocat-spinner-32 RequestReduce some minor cleanup and update release notes July 30, 2012
Octocat-spinner-32 Tools support azure cdn, add tracing to javascript processing, point build … March 01, 2012
Octocat-spinner-32 .gitignore replaced sqlserverce with sqlite in integration tests March 09, 2012
Octocat-spinner-32 AppHarbor.sln adding an AppHarbor.sln without the integration tests November 17, 2011
Octocat-spinner-32 BuildScript.ps1 get xunit runners from nuget June 12, 2012
Octocat-spinner-32 CNAME adding cname July 11, 2011
Octocat-spinner-32 GlobalAssemblyInfo.cs deploying 1.8.76 July 30, 2012
Octocat-spinner-32 License.txt Fix CRLF again November 07, 2011
Octocat-spinner-32 Microsoft.WebApplication.targets Fix CRLF again November 07, 2011
Octocat-spinner-32 Packages.dgml Removed EF packages. February 19, 2012
Octocat-spinner-32 Readme.md clean up readme again March 12, 2012
Octocat-spinner-32 RequestReduce.sln closes #154 enable nuget package restore March 08, 2012
Octocat-spinner-32 build.bat get build and project working in vs 2012 March 08, 2013
Octocat-spinner-32 index.html Fix CRLF again November 07, 2011
Readme.md

RequestReduce

RequestReduce Makes your website faster - sometimes much faster - with almost no effort

Getting started

  1. If you have Nuget, simply enter Install-Package RequestReduce in the Package Manager Console and skip steps two and three, otherwise download the latest RequestReduce version here
  2. Extract the contents of the downloaded zip and copy RequestReduce.dll and optipng.exe to your website's bin directory
  3. If you want to sync multiple servers with SqlServer copy te DLLs in RequestReduce.SqlServer to your bin directory
  4. If you have Less, Sass or Coffee scripts, copy the DLLs from RequestReduce.SassLessCoffee to your bin to compile these to CSS and Javascript
  5. Add the RequestReduceModule to your web.config or using the IIS GUI.

Assuming you are using IIS 7, you would add it by ensuring that your web.config's system.webServer/modules element contains an add element as follows:

<system.web>
  <httpModules>
    <add name="RequestReduce" type="RequestReduce.Module.RequestReduceModule, RequestReduce" />
  </httpModules>
</system.web>
<system.webServer>
  <validation validateIntegratedModeConfiguration="false"/>  
    <modules>
      <add name="RequestReduce" type="RequestReduce.Module.RequestReduceModule, RequestReduce" />
    </modules>
</system.webServer>

All background images you want to sprite must have an explicit width in their css class. Otherwise RequestReduce cannot guarantee that the background positions it injects will not cause adjacent sprites to bleed into a background image's view port. Also, RequestReduce will ignore repeating images so make sure to mark the image no-repeat if it is not a repeating image.

Troubleshooting

If RequestReduce does not appear to be doing anything, check out this troubleshooting wiki which provides several scenarios, options and debugging tips for figuring out why your content may not be being reduced. Also check the list of wiki support pages which provides documentation addressing several topics to help you optimize RequestReduce and explain how RequestReduce works.

Requirements

  • The Core RequestReduce Dll is Compatible with Framework versions 3.5 and 4.0
  • Sql Server integration and Less, Sass and Coffee compilation require .net 4.0
  • Standard Features are Medium Trust compliant
  • The identity that your asp.net worker process runs under must have write access to your web root directory for creating sprite and css files

What's Next?

There are a ton of features I intend to add in order to make web performance optimizations just happen as part of installing Request Reduce. Here is what's at the top of the backlog:

  • Support defered javascript loading
  • Leverege CSS 3 to allow RequestReduce to sprite more images without any need for css modifications for supporting browsers
  • Options to sprite foreground images
  • Provide a command line utility for incorporating RequestReduce optimizations into a build task

Resources

  • Read more about what is available in Request Reduce on the wiki.
  • Follow @mwrockx for updates on twitter
  • Report a bug or suggest a feature here
  • Get details on upgrades, upcoming features and case studies on my blog at Http://mattwrock.com

Acknowledgements

RequestReduce uses the following excellent OSS and other Free projects:

RequestReduce Core

RequestReduce.SqlServer

RequestReduce.SassLessCoffee

RequestReduce Internal Code (testing and building)

License

Licenced under Apache 2.0

Something went wrong with that request. Please try again.