我正在尝试设置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/
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。