Steps to reproduce it:
- Configure in portal-ext.properties the GZIPFilter property: com.liferay.portal.servlet.filters.gzip.GZipFilter=true
- Create a custom and simple html page to be loaded when the http not found error (404) occurs.
- Configure the page created in 2. in portal-ext.properties. For example: layout.friendly.url.page.not.found=/html/portal/my-custom-page-404.html
- Start the application and navigate to a nonexistent page. For example go to http://localhost:8080/sdfsfsf
- Observe that the browser keeps waiting for the page to load even though it is fully loaded. If you navigate with an iOS browser (f.e. from an iPhone or and iPad), the page does not load.
It only happens when a Tomcat server (since version 8.0) is used and when GZipFilter is true.
Observed behaviour: Browser keeps loading the page ~ 20s
Expected behaviour: Browser does not wait after the page is loaded
Observed behaviour: Browser does not load the page
Expected behaviour: Browser loads the page
content-length of the response is the same with both configurations of GZipFilter (on and off). 2465 in this case is the content-length corresponding to the "unGZipped" response.