Apache HTTP Server Version 2.0

Apache > HTTP Server > Documentation > Version 2.0 > Modules

# Apache Module mod_disk_cache

Description: | Content cache keyed to URIs
Status: | Experimental
Module Identifier: | disk_cache_module
Source File: | mod_disk_cache.c

### Summary

This module is experimental. Documentation is still under development...

`mod_disk_cache` implements a disk based storage manager for use with `mod_proxy.`

Content stored and retrived keyed to the URL. Content with access protections is not cached.

`mod_disk_cache` requires the services of `mod_cache`.

### Directives

## CacheDirLength Directive

Description: | The number of characters in subdirectory names
Syntax: | CacheDirLength length
Default: | `CacheDirLength 2`
Context: | server config
Status: | Experimental
Module: | mod_disk_cache

The `CacheDirLength` directive sets the number of characters for each subdirectory in the cache

CacheDirLevels*CacheDirLength value must not be higher than 20.

`CacheDirLength 4
`

## CacheDirLevels Directive

Description: | The number of levels of subdirectories in the cache
Syntax: | CacheDirLevels levels
Default: | `CacheDirLevels 3`
Context: | server config
Status: | Experimental
Module: | mod_disk_cache

The `CacheDirLevels` directive sets the number of subdirectory levels in the cache. Cached data will be saved this many directory levels below `CacheRoot`

CacheDirLevels*CacheDirLength value must not be higher than 20.

`CacheDirLevels 5
`

## CacheExpiryCheck Directive

Description: | On if cache observes Expires date when seeking files
Syntax: | CacheExpiryCheck binary
Default: | `CacheExpiryCheck ?`
Context: | server config
Status: | Experimental
Module: | mod_disk_cache

`CacheExpiryCheck On
`

The `CacheExpiryCheck` directive is currently not implemented.

## CacheGcClean Directive

Description: | The time in hours to retain unchanged files that match a url
Syntax: | CacheGcClean hours
Default: | `CacheGcClean ?`
Context: | server config
Status: | Experimental
Module: | mod_disk_cache

`CacheGcClean
`

The `CacheGcClean` directive is currently not implemented.

## CacheGcDaily Directive

Description: | The time of day for garbage collection (24 hour clock)
Syntax: | CacheGcDaily time
Default: | `CacheGcDaily ?`
Context: | server config
Status: | Experimental
Module: | mod_disk_cache

`CacheGcDaily
`

The `CacheGcDaily` directive is currently not implemented.

## CacheGcInterval Directive

Description: | The interval between garbage collections
Syntax: | CacheGcInterval hours
Context: | server config
Status: | Experimental
Module: | mod_disk_cache

`CacheGcInterval 24
`

The `CacheGcInterval` directive is currently not implemented.

## CacheGcMemUsage Directive

Description: | The maximum kilobytes of memory used for garbage collection
Syntax: | CacheGcMemUsage KBytes
Default: | `CacheGcMemUsage ?`
Context: | server config
Status: | Experimental
Module: | mod_disk_cache

`CacheGcMemUsage
`

The `CacheGcMemUsage` directive is currently not implemented.

## CacheGcUnused Directive

Description: | The time in hours to retain unused file that match a url
Syntax: | CacheGcUnused hours
Default: | `CacheGcUnused ?`
Context: | server config
Status: | Experimental
Module: | mod_disk_cache

`CacheGcUnused
`

The `CacheGcUnused` directive is currently not implemented.

## CacheMaxFileSize Directive

Description: | The maximum size (in bytes) of a file to be placed in the cache
Syntax: | CacheMaxFileSize bytes
Default: | `CacheMaxFileSize 1000000`
Context: | server config
Status: | Experimental
Module: | mod_disk_cache

The `CacheMaxFileSize` directive sets the maximum size in bytes of a file to be cached.

`CacheMaxFileSize 64000
`

## CacheMinFileSize Directive

Description: | The minimum size (in bytes) of a file to be placed in the cache
Syntax: | CacheMinFileSize bytes
Default: | `CacheMinFileSize 1`
Context: | server config
Status: | Experimental
Module: | mod_disk_cache

The `CacheMinFileSize` directive sets the minimum size in bytes of a file to be cached.

`CacheMinFileSize 64
`

## CacheRoot Directive

Description: | The directory to store cache files
Syntax: | CacheRoot directory
Default: | `none`
Context: | server config
Status: | Experimental
Module: | mod_disk_cache

The `CacheRoot` directive defines the name of the directory on the disk to contain cache files. What is happening if not set ?

`CacheRoot c:/cacheroot
`

## CacheSize Directive

Description: | The maximum amount of disk space that will be used by the cache in KBytes
Syntax: | CacheSize KBytes
Default: | `CacheSize 1000000`
Context: | server config
Status: | Experimental
Module: | mod_disk_cache

The `MCacheSize` directive sets the desired disk space usage of the cache, in KBytes (1024-byte units). This directive does not put a hard limit on the size of the cache. The garbage collector will delete files until the usage is at or below the settings. Always use a value that is lower than the available disk space.

`MCacheSize 5000000
`

## CacheTimeMargin Directive

Description: | The minimum time margin to cache a document
Syntax: | CacheTimeMargin ?
Default: | `CacheTimeMargin ?`
Context: | server config
Status: | Experimental
Module: | mod_disk_cache

`CacheTimeMargin
`