Nginx-对Heroku的代理请求

我正在尝试设置Nginx代理,它将所有传入的请求代理到Heroku应用.这个想法是为了让我的SaaS应用程序的客户能够使用自定义域.客户将为我的代理设置一个CNAME,它将设置Host标头并将请求代理到Heroku.

到目前为止,我有这个Nginx配置:

location / {
        proxy_set_header Host $host;
        proxy_pass http://myapp.herokuapp.com;
}

Heroku要求将Host标头设置为确定使用哪个应用程序.

请求到达Heroku,但似乎没有设置Host标头.

有任何想法吗?

最佳答案
在这里回答我自己的问题…

设法采用这种方法

location / {
    proxy_set_header    Host $host;
    proxy_set_header    X-Real-IP $remote_addr;
    proxy_set_header    X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header    Host $host-customdomain.mydomain.com;
    proxy_redirect      off;
    proxy_pass          http://my_heroku_app_name.herokuapp.com;
}

然后,当到达我的Heroku应用程序时,我从Host标头中修剪了-customdomain.mydomain.com,然后我的应用程序知道了请求的对象.希望这对某人有帮助.我写了一个更详细的博客文章https://mrvautin.com/enabling-custom-domain-for-saas-application-on-heroku/

相关文章

一、Linux下Nginx的安装 1.去官网 http://nginx.org/download/下载对应的Nginx安装包,推荐使...
一、空格:默认匹配、普通匹配 location / { root /home; } 二、= :精确匹配(表示匹配到 /home/resou...
``` nginx -c 配置文件路径 ``` ``` /usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.con...
前言 nginx可所谓是如今最好用的软件级别的负载均衡了。通过nginx的高性能,并发能力强,占用内存下的特...
1.ngnix概念 Nginx是一款高性能的http 服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器。由俄...
博客园从今天上午就开始报502错误 , 他的原因还不知道 , 暂时先说下我们遇到502的排查情况 最大的可能性...