Enable Output Caching (IIS 7)

Applies To: Windows 7, Windows Server 2008, Windows Server 2008 R2, Windows Vista

You can improve performance on your site or application by enabling output caching. Caching decreases the amount of processing time for requests made to your site or application by returning a processed copy of a Web page from the cache.

You should enable output caching if your site or application content requires complex or lengthy processing. For example, you might want to enable caching if your application retrieves information from a database. This will let you avoid making a call to the database every time that a particular Web page is requested. In addition to enabling output caching, you must also set up output cache rules to specify how you want content to be cached.


By default, output caching is enabled in IIS 7.


For information about the levels at which you can perform this procedure, and the modules, handlers, and permissions that are required to perform this procedure, see Output Caching Feature Requirements (IIS 7).

Exceptions to feature requirements

  • None

To enable output caching

You can perform this procedure using the user interface (UI) or a command line. For information about opening IIS Manager, see Open IIS Manager (IIS 7).

To use the UI

  1. Open IIS Manager and navigate to the level you want to manage. For information about navigating to locations in the UI, see Navigation in IIS Manager (IIS 7).

  2. In Features View, double-click Output Caching.

  3. On the Output Caching page, in the Actions pane, click Edit feature settings.

  4. In the Edit Output Cache Settings dialog box, click to select Enable cache and then click OK.

Command Line

To <do_something>, use the following syntax:

appcmd command object parameter:value | parameter:variable | parameter:option1 | option2

The variable <variable_name> is <description_of_variable>. For example, to <do_something_specific>, type the following at the command prompt, and then press ENTER:

appcmd <exact_command_to_accomplish_the_procedure>


When you use Appcmd.exe to configure the <element_name> element at the global level in IIS 7, you must specify /commit:WEBROOT in the command so that configuration changes are made to the root Web.config file instead of ApplicationHost.config.

For more information about Appcmd.exe, see Appcmd.exe (IIS 7).


The procedure in this topic affects the following configuration elements:


For more information about IISĀ 7 configuration, see IIS 7.0: IIS Settings Schema on MSDN.

See Also


Configuring Output Caching in IIS 7