Foros del Web » Administración de Sistemas » Apache »

Comprimr Gzip archivos css y js

Estas en el tema de Comprimr Gzip archivos css y js en el foro de Apache en Foros del Web. Hola. Llevo ya varios días con este tema y la verdad es que me resulta imposible. Tengo el servidor con 1 and 1 y directamente ...
  #1 (permalink)  
Antiguo 16/12/2013, 17:14
 
Fecha de Ingreso: mayo-2009
Mensajes: 742
Antigüedad: 15 años
Puntos: 6
Comprimr Gzip archivos css y js

Hola. Llevo ya varios días con este tema y la verdad es que me resulta imposible. Tengo el servidor con 1 and 1 y directamente lo he dejado por imposible, pero en local, estoy intetándolo aunque solo sea por curiosidad, pero tampoco soy incapaz.

Alguien me podría decir que ficheros tengo que modificar para poder recibir los archivos css y js comprimidos con gzip. Llevo ya días buscando información en internet y modificando el httpconf, etc, pero nada, imposible.

Gracias.
  #2 (permalink)  
Antiguo 17/12/2013, 08:09
Colaborador
 
Fecha de Ingreso: septiembre-2013
Ubicación: España
Mensajes: 3.648
Antigüedad: 10 años, 9 meses
Puntos: 578
Respuesta: Comprimr Gzip archivos css y js

¿Qué problema hay? Aquí tienes un buen tutorial.

Puedes hacerlo desde .htaccess mejor.
  #3 (permalink)  
Antiguo 17/12/2013, 12:57
 
Fecha de Ingreso: mayo-2009
Mensajes: 742
Antigüedad: 15 años
Puntos: 6
Respuesta: Comprimr Gzip archivos css y js

Hola. Gracias por ayudarme. He estado leyendo el texto de la pagina que me indicaste. En local, he puesto este codigo en mi htaccess
Código PHP:
Ver original
  1. <ifModule mod_gzip.c>
  2.   mod_gzip_on Yes
  3.   mod_gzip_dechunk Yes
  4.   mod_gzip_item_include file .(html?|txt|css|js|php|pl)$
  5.   mod_gzip_item_include handler ^cgi-script$
  6.   mod_gzip_item_include mime ^text/.*
  7.   mod_gzip_item_include mime ^application/x-javascript.*
  8.   mod_gzip_item_exclude mime ^image/.*
  9.   mod_gzip_item_exclude rspheader ^Content-Encoding:.*gzip.*
  10. </ifModule>
  11. <ifModule mod_expires.c>
  12.   ExpiresActive On
  13.   ExpiresDefault "access plus 1 seconds"
  14.   ExpiresByType text/html "access plus 1 seconds"
  15.   ExpiresByType image/gif "access plus 2592000 seconds"
  16.   ExpiresByType image/jpeg "access plus 2592000 seconds"
  17.   ExpiresByType image/png "access plus 2592000 seconds"
  18.   ExpiresByType text/css "access plus 604800 seconds"
  19.   ExpiresByType text/javascript "access plus 216000 seconds"
  20.   ExpiresByType application/x-javascript "access plus 216000 seconds"
  21. </ifModule>

Actualizando la pagina, obtengo estos datos de un archivo css con Firebug

Encabezados de respuesta
Connection Keep-Alive
Date Tue, 17 Dec 2013 18:58:08 GMT
Etag "1f194-4e871faf7badd"
Keep-Alive timeout=5, max=99
Server Apache/2.4.3 (Win32) OpenSSL/1.0.1c PHP/5.4.7

Encabezados de solicitud
Accept text/css,*/*;q=0.1
Accept-Encoding gzip, deflate
Accept-Language es-ES,es;q=0.8,en-US;q=0.5,en;q=0.3
Cache-Control max-age=0
Connection keep-alive
Cookie __utma=111872281.466048796.1386540207.1386540207.1 386540207.1; __utmz=111872281.1386540207.1.1.utmcsr=(direct)|ut mccn=(direct)|utmcmd=(none); PHPSESSID=jdfpivs0facssi1f5fimroi7f3
Host localhost
If-Modified-Since Fri, 11 Oct 2013 07:22:26 GMT
If-None-Match "1f194-4e871faf7badd"
Referer http://localhost/colmenar_viejo/
User-Agent Mozilla/5.0 (Windows NT 6.1; WOW64; rv:25.0) Gecko/20100101 Firefox/25.0 FirePHP/0.7.4
x-insight activate

Encabezados de respuesta de la caché
Accept-Ranges bytes
Content-Length 127380
Content-Type text/css
Date Tue, 17 Dec 2013 18:58:08 GMT
Etag "1f194-4e871faf7badd"
Last-Modified Fri, 11 Oct 2013 07:22:26 GMT
Server Apache/2.4.3 (Win32) OpenSSL/1.0.1c PHP/5.4.7
Vary User-Agent


Es lo que llevo varios días y no soy capaz de solucionar.
  #4 (permalink)  
Antiguo 17/12/2013, 14:58
Colaborador
 
Fecha de Ingreso: septiembre-2013
Ubicación: España
Mensajes: 3.648
Antigüedad: 10 años, 9 meses
Puntos: 578
Respuesta: Comprimr Gzip archivos css y js

Pues está todo listo, sólo queda añadir:

Código Apache:
Ver original
  1. <FilesMatch "\.(html?|txt|css|js)$">
  2. Header set Content-Length "totalBytes"
  3. Header set Content-Encoding "gzip"
  4. </FilesMatch>


Última edición por PHPeros; 17/12/2013 a las 15:08
  #5 (permalink)  
Antiguo 17/12/2013, 16:12
 
Fecha de Ingreso: mayo-2009
Mensajes: 742
Antigüedad: 15 años
Puntos: 6
Respuesta: Comprimr Gzip archivos css y js

Hola.

Añadiendo el último codigo al anterior en el htaccess, los resultados son los mismos.
  #6 (permalink)  
Antiguo 18/12/2013, 04:01
 
Fecha de Ingreso: mayo-2009
Mensajes: 742
Antigüedad: 15 años
Puntos: 6
Respuesta: Comprimr Gzip archivos css y js

Hola, he seguido intentandolo. Poniendo este codigo en mi htaccess
Código Apache:
Ver original
  1. php_flag zlib.output_compression On
  2. php_value zlib.output_compression_level 9
  3. AddHandler application/x-httpd-php .css .js

Ocurren dos cosas:
- En local, hace la compresión gzip a todos los css y js, que es lo que quiero, pero la pagina la muestra mal, como si los css y los js no los leyera.
- En remoto, directamente me da un error 500 el servidor.
  #7 (permalink)  
Antiguo 18/12/2013, 09:45
Colaborador
 
Fecha de Ingreso: septiembre-2013
Ubicación: España
Mensajes: 3.648
Antigüedad: 10 años, 9 meses
Puntos: 578
Respuesta: Comprimr Gzip archivos css y js

Acabo de buscar y casi ninguna versión de apache soporta gzip. En su lugar debes usar deflate:

Código apache:
Ver original
  1. AddOutputFilterByType DEFLATE text/javascript text/css

Con lo cual lo que tenías hasta ahora sobra.
  #8 (permalink)  
Antiguo 18/12/2013, 10:22
 
Fecha de Ingreso: mayo-2009
Mensajes: 742
Antigüedad: 15 años
Puntos: 6
Respuesta: Comprimr Gzip archivos css y js

Hola. Gracias de nuevo por responder.

En local, poniendo esa linea en el htaccess, me salta un error 500 con este texto:

Se produjo un error interno en el servidor y le fue imposible completar su solicitud. El servidor puede estar sobrecargado, o hubo un error en la ejecución de un programa 'CGI'.

He estado mirando el http.conf y en la linea

LoadModule deflate_module modules/mod_deflate.so, tanto si le pongo la almohadilla como sino, sale el mismo error.
  #9 (permalink)  
Antiguo 18/12/2013, 10:41
Colaborador
 
Fecha de Ingreso: septiembre-2013
Ubicación: España
Mensajes: 3.648
Antigüedad: 10 años, 9 meses
Puntos: 578
Respuesta: Comprimr Gzip archivos css y js

Si el módulo está cargado (sin la almohadilla) no debería dar ningún problema.

El error 500 lo está dando tu server a causa de un problema que no tiene nada que ver.

Prueba desde la web y elimina el código que no sirve. Los servidores virtuales a veces suponen problemas.
  #10 (permalink)  
Antiguo 18/12/2013, 11:27
 
Fecha de Ingreso: mayo-2009
Mensajes: 742
Antigüedad: 15 años
Puntos: 6
Respuesta: Comprimr Gzip archivos css y js

Hola. Lo he sacado todo a un proyecto aparte, donde solo tengo un index.php, un bootstrap.css y un htaccess.

En el index tengo esto:

Código PHP:
Ver original
  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4.    
  5.     <link href="bootstrap.css" rel="stylesheet">
  6.    
  7.    
  8.    
  9. </head>
  10. <body>
  11. <h1>Esto es una página de prueba.</h1>
  12. </body>
  13. </html>

En el htaccess esto
Código Apache:
Ver original
  1. AddOutputFilterByType DEFLATE text/javascript text/css

y en el css el codigo de bootstrap. Sigue dando el mismo error que antes
  #11 (permalink)  
Antiguo 18/12/2013, 12:46
Colaborador
 
Fecha de Ingreso: septiembre-2013
Ubicación: España
Mensajes: 3.648
Antigüedad: 10 años, 9 meses
Puntos: 578
Respuesta: Comprimr Gzip archivos css y js

Pues a mí me funciona perfecto.

PD: Debiste localizar el problema antes.

Última edición por PHPeros; 18/12/2013 a las 12:55
  #12 (permalink)  
Antiguo 18/12/2013, 15:21
 
Fecha de Ingreso: mayo-2009
Mensajes: 742
Antigüedad: 15 años
Puntos: 6
Respuesta: Comprimr Gzip archivos css y js

Ya se porque es. En el httpconf, ademas de activar
LoadModule deflate_module modules/mod_deflate.so
hay que activar esto si la version de apache es 2.4
LoadModule filter_module modules/mod_filter.so
En local solucionado, ahora el problema es claro, si en remoto no puedes cambiar estos valores porque no te deja el hosting compartido,
¿Se pueden cambiar estos valores a traves de htaccess o de php? Y si se puede, ¿Como?
  #13 (permalink)  
Antiguo 19/12/2013, 08:19
Colaborador
 
Fecha de Ingreso: septiembre-2013
Ubicación: España
Mensajes: 3.648
Antigüedad: 10 años, 9 meses
Puntos: 578
Respuesta: Comprimr Gzip archivos css y js

En un hosting compartido no tienes acceso a la configuración de Apache. Deberás hablar con los responsables.

Etiquetas: css, gzip, ip, js
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 19:40.