У меня есть приложение Phoenix, которое живет на устройстве в локальной сети. Я хочу иметь доступ к этому приложению через локальный домен mDNS (hostname.local) и через домен удаленного доступа с обратным прокси (hostname.example.tld).
Когда я настраиваю URL-адрес конечной точки на что-либо, статические ресурсы ВСЕГДА будут связаны с этим доменом.
например. учитывая эту конфигурацию:
config :ui, MyAppWeb.Endpoint,
url: [host: "hostname.local"]
Получение приложения с помощью curl http://hostname.example.tld
будет выглядеть так:
<!DOCTYPE html>
<html lang="en">
<head>
<title>StackOverflow Demo</title>
<link rel="stylesheet" href="http://hostname.local/css/app.css"/>
</head>
<body>
Hello World!
<script type="text/javascript" src="http://hostname.local/js/app.js"></script>
</body>
</html>
Если вы не настроите клавишу url
, то по умолчанию будет использоваться localhost.
Как я могу настроить Phoenix для использования запрашиваемого клиентом заголовка Host в качестве базового URL? Django имеет конфигурацию, в которой вы можете определить несколько разрешенных заголовков хостов, на которые будет реагировать приложение. Есть что-то похожее для Феникса?