Skip to main content
Drupal is a registered trademark of Dries Buytaert
Release: OpenID Connect / OAuth client 3.0.0-alpha9 New alpha version released for module openid_connect (3.0.0-alpha9). Usage Milestone: Google Analytics Module google_analytics crossed 1,000 active installs. Release: Timelinr 1.0.1 Minor update available for module timelinr (1.0.1). Release: GraphQL Compose Codegen 1.1.2 Minor update available for module graphql_compose_codegen (1.1.2). Release: Mapy.com 1.1.3 Minor update available for module mapycom (1.1.3). Release: Ckeditor5 entity browser 3.0.3 Minor update available for module ckeditor5_entity_browser (3.0.3). Release: Ckeditor5 entity browser 3.0.1 Minor update available for module ckeditor5_entity_browser (3.0.1). Release: Ckeditor5 entity browser 3.0.2 Minor update available for module ckeditor5_entity_browser (3.0.2). Release: Teamleader Integration 4.0.2 Minor update available for module teamleader (4.0.2). Module Revived: Entityqueue Buttons 1.1.2 Module entityqueue_buttons updated after 8 months of inactivity (1.1.2).

Debug Cacheability Headers Split

45 sites No security coverage Drupal 10–11
View on drupal.org

This module splits large cacheability headers into multiple smaller headers to prevent web server errors caused by exceeding maximum header size limits. It automatically divides headers if they exceed a configured size, ensuring cacheability information is still accessible.

Most webservers have a maximum header size limit. Most common limit is 8K per header, which may be configurable or not, as is (at the time of writing) the case of Apache2 with mod_proxy_fcgi.

For complex sites, the number of cache tags may be large, so when http.response.debug_cacheability_headers is enabled, the respective headers' size may exceed the server limit, resulting in server errors (WSOD, 502 Bad Gateway etc).

Related issues with more details and discussion:

The proposed approach is to split the large cacheability header(s) into multiple ones within the limit (e.g. 'X-Drupal-Cache-Tags', 'X-Drupal-Cache-Tags-1', 'X-Drupal-Cache-Tags-2' etc).

Features

When http.response.debug_cacheability_headers is enabled and if one of the cacheability headers exceeds the configured size limit, the header is automatically split into chunks.

Post-Installation

The default applicable configuration for the header limits is:
- 8192 (8KB) for the size limit per header
- 8000 (< 8KB) for the header chunk size when split

You may configure these at /admin/config/development/settings/cacheability.

Alternatively, you may override them via `settings.local.php` file as follows:

$config['debug_cacheability_headers_split.settings']['header_size_limit'] = 5120;
$config['debug_cacheability_headers_split.settings']['header_chunk_size'] = 5000;

Additional Requirements

None.

Similar projects

I do not believe that this is a core bug nor that it should be addressed by Drupal core. See detailed explanation here.

Depends on

Dependencies of the latest stable release

No dependencies recorded for this project.

Required by

Tracked projects that depend on this one

No tracked projects depend on this one yet.

Activity

Tracked releases
2
Tracked since
Jun 2025
Latest release
11 months ago
Releases (12 mo)
1
Maintenance
Slowing

Releases

Version Type Core Release date
1.0.1 Stable 10–11 Sep 22, 2025
1.0.0 Stable 9–11 Jun 30, 2025