Viz*_*tra 3 elixir phoenix-framework
我在 nginx 后面设置了 Phoenix 应用程序。Nginx 正在提供 https 流量。
我希望来自 Coherence 的电子邮件包含 https 网址,例如https://my_domain.com/...
,但我不知道如何做到这一点。
这是我的应用程序的配置:
config :my_app, MyApp.Endpoint,
http: [port: 8080],
url: [host: "my_domain.com", port: 443],
# ...
Run Code Online (Sandbox Code Playgroud)
使用此配置,电子邮件中的 URL 如下所示:my_domain.com:443/some_path
。当我移除时port: 443
,它们就变成了my_domain.com:8080/some_path
。并且添加force_ssl: [hsts: true]
也没有帮助。
当然,我可以设置url: [host: "my_domain.com", port: 80]
nginx 将所有 http 请求重定向到端口 443,但这对我来说似乎是错误的。我可以编辑电子邮件模板来强制使用 https url,但这似乎也是错误的。
或者也许在 erlang 应用程序前面使用代理不是 erlang 方式,而我只是还没有得到它?
您需要设置scheme
为"https"
. 这应该有效:
config :my_app, MyApp.Endpoint,
http: [port: 8080],
url: [host: "my_domain.com", port: 443, scheme: "https"],
# ...
Run Code Online (Sandbox Code Playgroud)