通过Plug.Conn.send_file服务SPA

时间:2019-06-06 04:38:00

标签: elixir phoenix-framework

我正在按照以下决议通过Phoenix服务我的SPA:

https://stackoverflow.com/a/37924920/15064

当我转到发布版本时,spa会在带有版本名称的目录中结束,例如: /opt/appname/lib/appname-0.0.1/priv/static/index.html

这似乎是一种脆弱的方法,因为新版本会在每次发布新版本的应用程序时断开此链接。

反正有从相对路径提供应用程序的服务吗?

1 个答案:

答案 0 :(得分:2)

由于它位于priv的{​​{1}}目录中,因此您可以执行以下操作:

app_name

这将返回基于Application.app_dir(:app_name, "priv/static/index.html") 位置的完整路径,即使您四处移动项目,该路径也将起作用。