Etag y Gzip para mejorar el rendimiento Web

La cada vez mayor importancia del posicionamiento web queda patente en el aumento de las preocupaciones por programadores, diseñadores o webmaster en optimizar sus webs con el objetivo de mejorar el posicionamiento. Por ello, hoy explicaremos una serie de buenas prácticas para mejorar el posicionamiento web.

Estas buenas prácticas de las que vamos a hablar para mejorar el posicionamiento web tienen que ver con una serie de directivas: Etag y Gzip.

Antes de aplicar las directivas, tenemos que analizar si nuestro Hosting necesita activarlas, para ello podemos utilizar un analizador online como gtmetrix.

Si tras realizar el análisis vemos que nuestra web necesita ser optimizada, te recomendamos activar las siguientes directivas en tu sitio web.

compresion

Si tienes un .htaccess como medida de precaución te recomendamos que hagas una copia de seguridad, antes de hacer modificaciones, por si alguna de las directivas que vamos a añadir hace que la web deje de funcionar. En el caso de que suceda esto recuperaríamos la copia de .htaccess.

Pasos para activar las directivas Etag y Gzip con el objetivo de mejorar el posicionamiento web

Crearemos un .htaccess y pegamos las siguientes directivas, en el caso de que ya tengas un .htaccess añadimos las siguientes directivas separadas del contenido principal del .htaccess, por si hay algún conflicto en el archivo con la web puedas deshacer los cambios lo más rápido posible

#Mejorar velocidad

# BEGIN Compress text files
<ifModule mod_deflate.c>
<filesMatch "\.(css|js|x?html?|php)$">
SetOutputFilter DEFLATE
</filesMatch>
</ifModule>
# END Compress text files

# BEGIN Expire headers
<ifModule mod_expires.c>
ExpiresActive On
ExpiresDefault "access plus 1 seconds"
ExpiresByType image/x-icon "access plus 2592000 seconds"
ExpiresByType image/jpeg "access plus 2592000 seconds"
ExpiresByType image/jpg "access plus 2592000 seconds"
ExpiresByType image/png "access plus 2592000 seconds"
ExpiresByType image/gif "access plus 2592000 seconds"
ExpiresByType application/x-shockwave-flash "access plus 2592000 seconds"
ExpiresByType text/css "access plus 604800 seconds"
ExpiresByType text/javascript "access plus 216000 seconds"
ExpiresByType application/javascript "access plus 216000 seconds"
ExpiresByType application/x-javascript "access plus 216000 seconds"
ExpiresByType text/html "access plus 600 seconds"
ExpiresByType application/xhtml+xml "access plus 600 seconds"
</ifModule>
# END Expire headers

# BEGIN Cache-Control Headers
<ifModule mod_headers.c>
<filesMatch "\.(ico|jpe?g|png|gif|swf)$">
Header set Cache-Control "max-age=2592000, public"
</filesMatch>
<filesMatch "\.(css)$">
Header set Cache-Control "max-age=604800, public"
</filesMatch>
<filesMatch "\.(js)$">
Header set Cache-Control "max-age=216000, private"
</filesMatch>
<filesMatch "\.(x?html?|php)$">
Header set Cache-Control "max-age=600, private, must-revalidate"
</filesMatch>
</ifModule>
# END Cache-Control Headers

FileETag All
FileETag MTime Size
# INICIO Directivas para fecha de expiracion
<ifmodule mod_expires.c>
<filesmatch "\.(jpg|jpeg|gif|png|css|js)$">
ExpiresActive On
ExpiresDefault A86400
ExpiresByType image/x-icon A2592000
ExpiresByType application/x-javascript A2592000
ExpiresByType text/css A2592000
ExpiresByType image/gif A604800
ExpiresByType image/png A604800
ExpiresByType image/jpeg A604800
ExpiresByType text/plain A604800
ExpiresByType application/x-shockwave-flash A604800
ExpiresByType video/x-flv A604800
ExpiresByType application/pdf A604800
ExpiresByType text/html A900
</filesmatch>
</ifmodule>
# FIN Directivas para fecha de expiracion

# BEGIN Remove Last-Modified Header
<ifModule mod_headers.c>
Header unset Last-Modified
</ifModule>
# END Remove Last-Modified Header

AddDefaultCharset utf-8

#mod Rewrite

# INICIO Compresion GZip
RewriteEngine on
RewriteOptions Inherit

#Check to see if browser can accept gzip files.
ReWriteCond %{HTTP:accept-encoding} (gzip.*)

#make sure there's no trailing .gz on the url
#ReWriteCond %{REQUEST_FILENAME} !^.+\.gz$

#check to see if a .gz version of the file exists.
RewriteCond %{REQUEST_FILENAME}.gz -f

#All conditions met so add .gz to URL filename (invisibly)
RewriteRule ^(.+) $1.gz [L]
# FIN Compresion GZip

Una vez copiadas y pegadas las siguientes líneas en el archivo .htaccess volvemos a lanzar el analizador online, si las directivas no aparecen activas (y es cliente de nerion), podrás ponerte en contacto con nosotros a través de soporte@nerion.com y te ayudaremos a activarlas.

¿Qué hace cada una de estas directivas?

<ifModule mod_deflate.c>

Esta directiva sirve para activar el modo deflate, que sirve para comprimir algunos archivos antes de ser enviados al cliente. En este caso, la directiva hace que si tiene el modo deflate activo, comprima los archivos .css .js .html .php, antes de ser enviado al cliente.

<ifModule mod_expires.c>

Esta directiva sirve para para activar el mod_expires, que es una directiva de controlar los encabezados HTTP para tu sitio y las siguientes directivas sirven para escoger, los tipos de archivos que expiran en la cabecera.

<ifModule mod_headers.c>

Esta directiva sirve para activar el mod_headers, sirve para tener activo el Cache-Control de los encabeceras con los diferentes tipos de archivos.

# INICIO Compresion GZip

Esta directiva sirve para activar la compresión Gzip y mejorar el rendimiento de la web ya que indicamos que deben viajar comprimidos y esto hace que mejore nuestro posicionamiento web.

Comparte este tutorial:

No hay comentarios en este tutorial

Sé el primero en enviar un comentario: