两个heroku服务器之间的nginx反向代理重定向

两个heroku服务器之间的nginx反向代理重定向

我将实现一个 nginx 反向代理。heroku 中有两台服务器,一台名为 myapp.herokuapp.com,另一台名为 blog.herokuapp.com。域名为 www.mydomain.com,它链接到我的 nginx 服务器。在 nginx 服务器中,重定向规则如下:www.mydomain.com 链接到 myapp.herokuapp.com,而 www.mydomain.com/* 将链接到 myapp.herokuapp.com/* 但是当客户访问 www.mydomain.com/blog 时,www.mydomain.com/blog/* 将链接到 blog.herokuapp.com 和 blog.herokuapp.com/*。

是否可以使用 nginx 反向代理实现?您对此有什么想法吗?

目前我可以从 80 重定向到 443

server{
    listen 80;
    server_name www.mydomain.com mydomain.com;
    return 301 https://$host$request_uri;
}
server{
    listen 443;
    server_name www.mydomain.com mydomain.com;
    location /{
        (how to change the location rules?)
    }
}

答案1

您可以拥有以下位置块:

location ~ /blog(/.+)$ {
    proxy_pass http://blog.herokuapp.com$1;
}

location / {
    proxy_pass http://myapp.herokuapp.com;
}

相关内容