2010-05-29 16 views
17

Widziałem ograniczone zasoby dotyczące sprawdzania ciasteczek w Nginx, ale nie mogłem znaleźć odpowiedzi, której szukałem, mam nadzieję, że niektórzy z was, mistrzowie Nginx, mogą mi pomóc.Przekierowanie Nginxa jeśli plik cookie jest obecny

Zasadniczo mam vhosta że chciałbym skierować do innej domeny, chyba że użytkownik ma plik cookie, tutaj jest to, co stworzyliśmy:

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; 
} 

Ale to nie wydają się działać , pojawia się błąd:

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

nie jestem pewien, jak postępować tutaj, jakieś pomysły chłopaki?

Odpowiedz

19

To ma sens. chciałbym zdefiniować inny wirtualnego hosta (beta.example.com) z tego innego folderu głównego i po napotkaniu cookie - zrobić przepisać

nie można ustawić różne korzenie dla domeny warunkowo, ale można przekierować (przepisać) do innej domeny warunkowo

przykładem tego facet pomógł mi trochę temu http://nicknotfound.com/2009/01/12/iphone-website-with-nginx/

Powiązane problemy