2010-05-29 11 views
17

He visto algunos recursos limitados en la búsqueda de cookies con Nginx, pero realmente no pude encontrar la respuesta que estaba buscando, con suerte algunos de ustedes, maestros de Nginx, pueden echarme una mano.Nginx redirigir si cookie presente

Esencialmente tengo un host virtual que me gustaría volver a dirigir a un dominio diferente a menos que el usuario tiene una cookie, esto es lo que he creado:

server { 
    listen 80; 
    server_name example.com; 

    if ($http_cookie ~* "dev_cookie") { 
    root /home/deploy/apps/example/current/public; 
    passenger_enabled on; 
    rack_env production; 
    break; 
    } 
    rewrite ^/(.*) http://beta.example.com/$1 permanent; 
} 

Pero no parece funcionar , me sale el error:

[emerg]: "root" directive is not allowed here in /opt/nginx/conf/nginx.conf:45 

no estoy seguro de cómo proceder aquí, todos los tíos ideas?

Respuesta

19

Eso tiene sentido. yo definiría de otra máquina virtual (beta.example.com) con la carpeta raíz diferente y al encontrarse con galletas - hacer una reescritura del

No es posible establecer diferentes raíces de un dominio condicional, pero se puede redirigir (reescritura) a otro dominio condicionalmente

ejemplo de este tipo me ayudó un poco atrás http://nicknotfound.com/2009/01/12/iphone-website-with-nginx/

Cuestiones relacionadas