2017-01-31 10 views
2

Я пытаюсь установить прокси-сервер Nginx, который проксирует все входящие запросы в приложение Heroku. Идея состоит в том, чтобы позволить клиентам моего приложения SaaS использовать пользовательские домены. Клиент установит CNAME на мой прокси-сервер и установит заголовок Host и прокси-запрос на запрос к Heroku.Nginx - запрос прокси к Heroku

До сих пор у меня есть этот Nginx конфигурации:

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

Heroku требует, чтобы заголовок Host установлен, чтобы определить, какое приложение использовать.

Запросы добираются до Heroku, но кажется, что заголовок Host не установлен.

Любые идеи?

ответ

2

Отвечая на мой собственный вопрос здесь ...

Успели идти для этого подхода:

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; 
} 

Я тогда подстриженной -customdomain.mydomain.com из заголовка Host, когда он попадает в мое приложение Heroku, а затем мое приложение знает на который клиент запросил. Надеюсь, это помогает кому-то. Я написал сообщение в блоге с более подробной информацией: https://mrvautin.com/enabling-custom-domain-for-saas-application-on-heroku/

 Смежные вопросы

  • Нет связанных вопросов^_^