Keep-Alive Header in JIRA/Confluence is Not Compliant

William Yeack January 12, 2022

I have recently upgraded my JIRA/Confluence datacenter instances to version 8.20.3 and 7.4.14 respectively.

After upgrading, HTTP responses on both have included the keep-alive header, which you can see here (you can check out my public site here: https://support.member.buzz):

https://www.screencast.com/t/iOlMc9Q1Lt

This header is technically not allowed in HTTP/2, as you can see here:

https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Keep-Alive

While most browsers ignore it, some versions of Safari (v13 and older) will not load the page if the header is present.  You can see that in action here:

https://www.browserstack.com/screenshots/904c001da44e68c7d4b9e5aea2340562f25e2db1

Here are some additional points:

  • While both of these sites are being served via a reverse proxy, I have also connected directly to the host server to confirm it is coming from JIRA/Confluence directly.
  • If I block the Keep-Alive header via the reverse proxy, Confluence's synchrony breaks.
  • It doesn't seem to be just me, for instance, Apache's JIRA instance is sending the keep-alive header:
    https://issues.apache.org/jira/browse/TS-3959

Is there any way of disabling the keep-alive header so that my site will work in Safari (and be HTTP compliant)?

1 answer

0 votes
William Yeack January 12, 2022

p.s. it seems like if I set the maxKeepAliveRequests option in my server.xml file to 1 it will stop the keep-alive header from being sent - but will that break anything?

Suggest an answer

Log in or Sign up to answer