Drupal Purge - Headers larger than 8174 bytes break PHP-FPM

Create a patch file: patches/purge-limit-header-size.patch

diff --git a/src/EventSubscriber/CacheableResponseSubscriber.php b/src/EventSubscriber/CacheableResponseSubscriber.php
index f9fe74c..f48a9cc 100644
--- a/src/EventSubscriber/CacheableResponseSubscriber.php
+++ b/src/EventSubscriber/CacheableResponseSubscriber.php
@@ -66,7 +66,7 @@ class CacheableResponseSubscriber implements EventSubscriberInterface {
             throw new \LogicException("Header plugin '$pluginId' should return a non-empty string on ::getHeaderName()!");
           }

-          $response->headers->set($name, $header->getValue($tags));
+          $response->headers->set($name, substr($header->getValue($tags), 0, 8174));
         }
       }
     }

Apply patch in composer.json

{
    ...
    "extra": {
        ...
        "patches": {
            "drupal/purge": {
                "Headers larger than 8174 bytes break PHP-FPM": "patches/purge-limit-header-size.patch"
            }
        }
    }
}

Links

  • [[2026-W05]]