Author Image
Hola

Soy Blai Peidro

Senior Infrastructure Engineer

  • Stack Linux · Bash · Python · Ansible
  • Intereses Automatización · IA · Network
  • Idiomas Español · Català · English
  • Ubicación Barcelona, España
  • Web https://www.blai.blog

Rewrite de URL en NGINX

Cómo hacer un rewrite de una URL en NGINX.



Hace años, las URL solían ser del tipo:

https://www.web.com/noticias.php?id=1284

Esto pasó de moda y hoy en día es habitual que las URL sean del tipo:

https://www.web.com/noticia/1284

NGINX nos permite crear URL modernas mediante su instrucción rewrite.

Si volvemos al caso anterior, podemos lograrlo en NGINX usando este código:

rewrite ^/noticia/(.*) /noticias.php?id=$1 last;

Donde la sintaxis es:

rewrite regex replacement [flag];

- regex lee la expresión regular introducida por el usuario en la URL.
- replacement se refiere a la "parte real", los archivos del servidor con sus variables GET.
- flag: puede ser uno de estos cuatro valores

• last: deja de procesar el rewrite y busca el siguiente regex.
• break: deja de procesar el rewrite.
• redirect: realiza un redirect con código 302.
• permanent: realiza un redirect permanente con código 301.

Los rewrite se pueden emplazar dentro de un bloque location o de un bloque server en NGINX.


Fuente:

http://nginx.org/en/docs/http/ngx_http_rewrite_module.html

No hay comentarios:

Publicar un comentario