Cargando



Nginx - Cookies Rewrite

En este tutorial veremos cómo podemos utilizar las cookies dentro de nuestro servidor Nginx.


jun 29 2014 17:13
Profesional
jun 30 2014 17:15
Una de las ventajas que tenemos en Nginx es su flexibilidad para utilizar diferentes elementos y con ello poder crear reglas que el servidor interpreta y así poder servir el contenido adecuado, uno de estos elementos que podemos utilizar son las cookies del navegador.

Pues existen varias cosas, una que se nos puede ocurrir es que mediante una cookie establezcamos ambientes y entornos, entonces sí sabemos en qué entorno estamos podemos servir un contenido con una configuración diferente.

Cookies en Nuestro Navegador


Las cookies son pequeños archivos que podemos almacenar en el equipo del usuario, con ello luego nuestro sitio puede obtener datos importantes como por ejemplo preferencias o historial de usos pasados del usuario en un site.

Ventaja
Aprovechando esto Nginx también puede hacer lo mismo y tomar ventaja de estos archivos y según el contenido podemos tomar una acción u otra, como por ejemplo establecer ambientes de trabajo y con ello escribir una regla diferente según el ambiente.


Si queremos ver las cookies en nuestros navegadores, generalmente tenemos que ir a la configuración avanzada, donde podremos ver algo como lo siguiente:

nginx_cookies_rewirte.jpg


Vemos en la imagen como el navegador cataloga las cookies según el site del que provienen, y el nombre que les asignamos desde nuestras aplicaciones, generalmente esto es transparente para los usuarios, sin embargo podemos utilizarlo como un elemento de acción de nuestra aplicación aprovechando las capacidades que tiene Nginx como servidor.

Crear una Regla Rewrite


Para crear la regla rewrite con las cookies, lo primero que debemos hacer es pensar para que la queremos, en el caso de este ejemplo vamos a hacer unos condicionales para enviar al usuario a un ambiente según la cookie que posea en su equipo.

Veamos en la siguiente imagen un código que nos puede ayudar a conseguir el objetivo.


nginx_cookies_rewirte2.jpg


Aquí lo que hacemos es tener la variable $cookie_env, esta va a capturar la cookie que hemos colocado en la máquina del usuario, tenemos 3 ambientes donde aplicamos condicionales if y que según la cookie capturada vamos a rescribir la ruta con nuestra regla rewrite, de esta forma la aplicación puede recibir las variables enviadas en un entorno y según esto mostrar algunas características.

Importante
La clave de todo esto es que nuestra aplicación también debe trabajar en conjunto para hacer algo con las nuevas rutas que le pasa Nginx, sin embargo el usuario final no vera ninguna diferencia en la barra de URL de su navegador.


Como podemos ver Nginx nos permite acceder a más datos que los que el usuario puede imaginarse, con una buena aplicación y un poco de creatividad podemos descargar un poco el peso de la lógica dentro de nuestro servidor. Esto nos puede conllevar a simplificar un poco el código de nuestros sites, sin embargo como todo debemos aplicarlo sabiamente para que no hayan confusiones de mayor grado cuando trabajamos con equipos grandes de desarrolladores.

¿Te ayudó este Tutorial?


Sin comentarios, sé el primero!

No esperes más y entra en Solvetic
Deja tus comentarios y aprovecha las ventajas de la cuenta de usuario ¡Únete!

X