Clicky

Error en PHP a causa de SmartOptimizer

PHP Fatal error:  Unknown: Cannot use both zlib.output_compression and output_handler together!!

Velocidad carga sitio webDespué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

Jesus_Caceres