- User requests
/My-Page
with a completely cold cache - Global Redirect module says to redirect to /my-page instead with the "Case Sensitive URL Checking" enabled by default.
- Drupal core (patched with https://www.drupal.org/node/1678348) includes headers that allow this redirect to be cached
- Page cache stores the request for
/My-Page
with the headerLocation: /my-page
- User requests
/my-page
with a now-warm cache - Page cache response includes header to redirect the current request to /my-page, which creates an infinite redirect loop
This happens when using both Drupal's native page cache as well as Akamai. The cache_page.cid column is a VARCHAR, which in MySQL is a non-binary string and hence, it is case-insensitive by default. Akamai by default is case-insensitive.
- Enable case-sensitivity in Akamai's rules for storing and retrieving?