Dokku 子域都指向一个应用程序

Dokku subdomains all point to a single app

我使用 Dokku 在一台服务器上托管了多个应用程序。我在 Dokku 中启用了 vhosts 子域,所以我想访问我的应用程序:

...但是当我将浏览器指向...

...我总是得到app2。

知道如何访问 app1.mydomain.net 上的 app1 吗? 我还可以禁用 mydomain.net 上显示的任何内容吗? 我认为这是默认行为,所以我想知道我设置错了什么。

更多详情:

我正在使用 Dokku 0.5.6,运行正在使用 DigitalOcean droplet。

当我 运行 dokku domains app1 我得到:

=====> Global Domain Name
mydomain.net
=====> app1 Domain Names
app1.mydomain.net

...当我 运行 dokku domains app2 我得到:

=====> Global Domain Name
mydomain.net
=====> app2 Domain Names
app2.mydomain.net

你能复制以下命令的输出吗?

dokku domains app1
dokku domains app2

您可能将 app1.mydomain.net 添加到 app2,将其从 app1 中删除,但 app1 不是实际部署。

未知主机 headers 被路由到 nginx 配置堆栈中字典顺序第一个站点。一些相关信息可用 here

可获取有关 dokku 域管理的更多信息here

这是域问题 - 'host' 请求 header 中发送了错误的值。

在这种情况下,将显示字典顺序第一个站点。禁用此行为,以便每个站点仅显示在指定的域中,而在 mydomain.net.

中不显示任何内容

为此,在 /etc/nginx/nginx.conf 的 http 部分添加以下代码并重新启动 nginx

server {
  listen 80 default_server;
  listen [::]:80 default_server;

  server_name _;
  return 410;
  log_not_found off;
}

来源:http://dokku.viewdocs.io/dokku/configuration/domains/#default-site