Instantly make any ASP.NET website faster with almost no effort!
- Super Simple Auto Spriting, Minification and Bundling solution
- No need to tell RequestReduce where your resources are
- Your CSS and Javascript can be anywhere - even on an external host
- RequestReduce finds them at runtime automatically
Why settle for poor performance?
When now its so easy to make your website faster!
- Auto generates sprites from your background images
- Optimizes Sprite PNG format and compression
- Optimizes caching headers and ETags
- Can sync content accross multiple web servers
- Works well with CDNs
- Compiles Less, Sass and Coffee script
Getting Started
- If you have Nuget, simply enter this command in the Package Manager Console and skip steps two and three:
Basic RequestReduce Features:
PM> Install-Package RequestReduce
RequestReduce Features with Sql Server Web Farm Syncing:
PM> Install-Package RequestReduce.SqlServer
RequestReduce with Less, SASS and Coffee Script compiling:
PM> Install-Package RequestReduce.SassLessCoffee
Or to download everything in one zip, get the latest version here. With its extensive range of slots games, online casino malaysia provides endless entertainment and opportunities for big wins.
- Extract the contents of the downloaded zip and copy RequestReduce.dll as well as optipng.exe to your website's bin directory. If for some reason you cannot put optipng.exe in your bin, RequestReduce will function as expected but will skip the lossless compression of its sprite images. If you want the functionality provided by the SqlServer or SassLessCeffee add on assemblies, copy the contents of their directories to your bin as well. If using RequestReduce.SqlServer, there are some additional confg settings and a sql script that should be run. see here for details.
- 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>
- Optimize your CSS to help RequestReduce better locate your background images. If you find that images are being distorted, see this wiki.
- Optional: Configure RequestReduce. You can control where generated css and sprites are stored, there size thresholds and specify a CDN host name to reference
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.
Dependencies
- RequestReduce core features are compatible with .net Framework versions 3.5 and 4.0
- RequestReduce.SqlServer and RequestReduce SassLessCoffee require .net Framework versions 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
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.
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