GZipFilter en Liferay 7.1
Habilitando la compresión en las respuestas del portal
La nueva versión 7.1 de Liferay trae una sorpresita que acabo de descubrir:
El filtro GZipFilter, el que se encarga de devolver la respuesta comprimida del portal ¡está deshabilitado por defecto!
Se puede habilitar de nuevo añadiendo la siguiente línea del portal-ext.properties
com.liferay.portal.servlet.filters.gzip.GZipFilter=true
De todas formas, es verdad que este filtro me ha dado problemas de rendimiento en algunos proyectos y al final he optado por desactivarlo en alguno de ellos y delegar la compresión al apache2 que lo hace mucho mejor.
Así que, antes de volver a habilitar de nuevo este filtro, vamos a dejarlo desactivado tal y como viene por defecto y vamos a configurar nuestro frontal para que sea él el encargado de realizar la comprensión. En este caso vamos a ver cómo hacerlo en apache2 ya que es el que yo uso en mi web
<VirtualHost *:443> ... SetOutputFilter DEFLATE AddOutputFilterByType DEFLATE text/plain AddOutputFilterByType DEFLATE text/html AddOutputFilterByType DEFLATE text/xml AddOutputFilterByType DEFLATE text/css AddOutputFilterByType DEFLATE application/json AddOutputFilterByType DEFLATE application/xml AddOutputFilterByType DEFLATE application/xhtml+xml AddOutputFilterByType DEFLATE application/rss+xml AddOutputFilterByType DEFLATE application/javascript AddOutputFilterByType DEFLATE application/x-javascript <filesMatch "\\.(html|xml|json|js|css)$"> SetOutputFilter DEFLATE </filesMatch> … </VirtualHost>
Aseguraros eso sí de que están activados los modules necesarios
sudo a2enmod deflate filter
Y finalmente reiniciamos el apache2
sudo service apache2 restart
Para que veáis la importancia de habilitar la comprensión en las aplicaciones web, aquí tenéis la comparativa de la nota que le da Google page speed a mi web antes y después del cambio
Antes de habilitar la compresión
Después de habilitar la compresión
Menuda diferencia, ¿no?