我的nginx配置如下:

upstream staging {
    server myappstaging.somedomain.com;
}

upstream prod {
    server myapp.somedomain.com:443;
}

# map to different upstream backends based on header
map $http_x_server_select $pool {
    default "prod";
    staging "staging";
}

server {
    listen 80;
    server_name myapp.mydomain.com;

    location / {
        proxy_pass https://$pool;
    }
}

我想转发头设置为staging tox-server-select和prod tohttp://myappstaging.somedomain.com的请求
用nginx有可能吗?

最佳答案

将方案作为变量的一部分。
例如:

map $http_x_server_select $pool {
    default "https://prod";
    staging "http://staging";
}

以及:
proxy_pass $pool;

关于http - 我可以在Nginx上游同时使用HTTP和HTTPS吗?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/54733744/

10-13 05:39