PHP Fatal error: Unknown: Cannot use both zlib.output_compression and output_handler together!!
Después de instalar SmartOptimizer se me presentaba el siguiente error en los logs del servidor virtual del sitio:
[Fri Jul 29 14:09:54 2011] [error] [client 186.102.25.99] PHP Fatal error: Unknown: Cannot use both zlib.output_compression and output_handler together!! in Unknown on line 0, referer:
Si miramos el contenido del archivo .htacces dentro de la carpeta de SmartOptimizer que hemos subido a nuestro sitio al instalar la aplicación veremos que tiene tres líneas:
php_flag zlib.output_compression Off
php_flag output_buffering Off
php_value output_handler NULL
Estas instrucciones dicen a nuestro PHP (Preprocesador de Hipertexto) que no debe utilizar diversas compresiones en nuestros archivos y no utilizar los buffers.
Pero ya en el archivo php.ini que se carga con cada petición de conexión a nuestro sitio, y depende de vuestra configuración bien comentadas o bien activas, vienen estas instrucciones.
En mi caso el archivo php.ini estaba configurado así:
zlib.output_compression = On
zlib.output_compression_level = 9
output_buffering = Off
;output_handler = (esta última comentada)
Pero como vemos las dos primeras líneas del php.ini chocan con la instrucción php_flag zlib.output_compression Off que teníamos en el .htaccess del SmartOptimizer.
Solución para corregir este error:
PHP Fatal error: Unknown: Cannot use both zlib.output_compression and output_handler together!!
Posibilidad uno: poner el archivo php.ini con todas las líneas comentadas (punto y coma delante de cada una) y dejar el archivo .htaccess del SmartOptimizer como está:
php.ini
;zlib.output_compression = On
;zlib.output_compression_level = 9
;output_buffering = Off
;output_handler =
.htacces
php_flag zlib.output_compression Off
php_flag output_buffering Off
php_value output_handler NULL
Posibilidad dos (que es la que yo he utilizado): Corregir el archivo php.ini para que esté de acuerdo con las instrucciones del .htaccess del SmartOptimizer:
php.ini
zlib.output_compression Off
;zlib.output_compression_level = 9 (comentada)
output_buffering Off
output_handler NULL
y eliminar, o renombrar, el archivo .htaccess del SmartOptimizer para que no sea leído.
Espero os sirva y... ¡¡¡ velocidad a vuestros sitios !!!
Enlace: SmartOptimizer