nginx别名和proxy_pass在同一位置

时间:2018-04-15 16:45:12

标签: nginx

我希望能够在同一位置执行两项操作:

1)如果用户已登录(未设置cookie)  做一个alias。这将显示登录页面

2)如果他已登录,则向应用程序Web服务器执行proxy_pass。 但是我得到了

"alias" directive is not allowed here in ...

当我尝试在if中执行proxy_passalias时。如果不重写到新位置,我怎么能这样做?

这是我的配置:

location / {
                set $logged_in "false";
                if ($cookie_mojolicious) {
                        set $logged_in "true";
                }
                if ($logged_in = "false") {
                        # rewrite ^/$ /landing last;
                        alias /var/www/S7012MY/main_landing/;
                        last;
                }
                proxy_pass http://test;
                proxy_http_version 1.1;
                proxy_set_header Upgrade $http_upgrade;
                proxy_set_header Connection "upgrade";
                proxy_set_header Host $host;
                proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
                proxy_set_header X-Forwarded-Proto $scheme;
        }

0 个答案:

没有答案