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

Nginx Dokku子域都指向一个应用程序,nginx,dns,vhosts,dokku,Nginx,Dns,Vhosts,Dokku,我使用Dokku在一台服务器上托管了多个应用程序。我在Dokku中启用了vhosts子域,因此我想访问我的应用程序: app1.mydomain.net app2.mydomain.net …但当我将浏览器指向 app1.mydomain.net randomtext.mydomain.net mydomain.net …我总是得到app2 你知道如何在app1.mydomain.net上访问app1吗? 我还可以禁用mydomain.net上显示的任何内容吗? 我认为这是默认行为,所以我想知道

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

app1.mydomain.net app2.mydomain.net …但当我将浏览器指向

app1.mydomain.net randomtext.mydomain.net mydomain.net …我总是得到app2

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

更多详情:

我用的是Dokku 0.5.6,用的是数字海洋液滴

当我运行dokku domains app1时,我得到:

…当我运行dokku domains app2时,我得到:


能否复制以下命令的输出

dokku domains app1
dokku domains app2
您可能已将app1.mydomain.net添加到app2,或已将其从app1中删除,或app1未实际部署

未知主机头被路由到nginx配置堆栈中按字典顺序排列的第一个站点。有关这方面的一些信息是可用的


有关dokku域管理的更多信息可用。

这是一个域问题-在“主机”请求标头中发送了错误的值

在这种情况下,将显示词典编纂的第一个站点。禁用此行为,使每个站点仅显示在指定的域中,而在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;
}

来源:

由于您给我的第一个链接,问题得以解决。我正在添加一个包含更多信息的答案。
dokku domains app1
dokku domains app2
server {
  listen 80 default_server;
  listen [::]:80 default_server;

  server_name _;
  return 410;
  log_not_found off;
}