Allow caching when the request have cookies – nginx

16 01 2017

Simply, ignore them. If Nginx sees it, it disables caching:

proxy_ignore_headers "Set-Cookie";
proxy_hide_header "Set-Cookie";

Advertisements




Nginx, redirección de parámetros GET

4 03 2011

Creando redirecciones en Nginx según los parámetros GET:

Si nos llega una url tal que:
http://www.midominio.com/index.php?buscador=50

y la queremos redirigir a sin pasar parámetros:
http://www.midominio.com/es/buscador

Se tiene que definir la siguiente condición en el archivo de definición del host dentro del bloque “server {”
location /index.php {
if ($args ~* id=buscador$) {
rewrite ^.+$ /es? redirect;
break;
}

Si hay que pasar parámetros, (quedaría algo así: http://www.midominio.com/es/buscador?50 ) hay que quitar el signo “?” del final del destino de la regla del rewrite.

También se puede redireccionar con algún parámetro definido:
if ($args ~* valor=43$) {
rewrite ^.+$ /es/cosas\?taxon=34? redirect;
break;
}
}

Si tienen que ser redirecciones dinámicas, variando el valor a recoger:
Si nos llega una url tal que:
http://www.midominio.com/index.php?ID=50

y la queremos redirigir a sin pasar parámetros:
http://www.midominio.com/es/buscador/50

Así:
location /index.php {
if ($args ~* "^ID=([0-9]+)$") {
set $cid $1;
rewrite ^ /es/buscador/$cid/? redirect;
break;
}

}

Luego, también se pueden hacer redirecciones “normales”:
rewrite ^/caja.php(.*)$ http://www.dominio.com/ permanent;