配置 Nginx 将 docker 容器反向代理到子域

配置 Nginx 将 docker 容器反向代理到子域
server {
    listen 443;
    server_name https://domain.dev
    ssl_certificate /etc/ssl/domain.dev.crt;
    ssl_certificate_key /etc/ssl/domain.dev.key;

    location / {
        proxy_pass  http://wiki;
    }
}
server {
    listen 443;
    server_name https://gitlab.domain.dev
    ssl_certificate /etc/ssl/domain.dev.crt;
    ssl_certificate_key /etc/ssl/domain.dev.key;

    location / {
        proxy_pass  http://gitlab;
    }
}

server {
    listen 443;
    server_name https://wiki.domain.dev
    ssl_certificate /etc/ssl/domain.dev.crt;
    ssl_certificate_key /etc/ssl/domain.dev.key;

    location / {
        proxy_pass  http://wiki;
    }
}

在以下输入的情况下,以下配置将产生以下不良行为。

www.域名.dev =>http://维基=== 很好。

域名.dev =>http://维基=== 很好。

gitlab.domain.dev =>http://维基=== 错误。预期http://gitlab

wiki.domain.dev =>http://维基=== 很好。

为什么即使配置为在输入“gitlab.domain.dev”作为 URL 时重定向到 gitlab 容器,上述配置也始终指向 wiki 容器?

我发现为什么所有子域名都指向同一个服务?但我认为发帖人的意图是让所有子域名都使用相同的服务?或者发帖人可能改变了既定意图,以节省一些想象中的资源。无论如何,这基本上与我的意图相反。

相关内容