Umbrella apps with plug ssl

is it possible to have an Umbrella App in Phoenix 1.4-dev that has multiple domains assigned to SSL in Plug

web_app_1 8443
web_app_2 8444

I need to setup firewall rules to forward 443 to 8443 AND 8444

this seems impossible?


Maybe you can have two Web.Endpoint with each with it’s own domain/port to bind to? You can achieve this by having either two phoenix apps in your umbrella, or by adding a “proxy” phoenix (or plug / cowboy) app which would reroute the request further “into the umbrella” based on the domain/port pair.

An easier way would be to just start two supervisors for the endpoints:

# in the <your_phoenix_app>/application.ex
# in start(_, _)

children = [
  supervisor(Web.Endpoint1), # binds to 8443
  supervisor(Web.Endpoint2) # binds to 8444

with both of them calling the same plugs.

1 Like