Drupal is a registered trademark of Dries Buytaert

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.

Activity

Total releases
2
First release
Jun 2025
Latest release
5 months ago
Release cadence
84 days
Stability
100% stable

Releases

Version Type Release date
1.0.1 Stable Sep 22, 2025
1.0.0 Stable Jun 30, 2025