嘟嘟社区

关于站点监听端口的疑问


本帖最后由 Delly 于 2022-1-1 10:49 编辑

各位mjj新年快乐!近来琢磨多服务sni分流的事情。我看到网上说443端口没办法重复监听,要使用sni之类的分流措施,但是有一点不明白,几个站点的nginx配置都监听80端口,为啥就不会冲突呢?(实操就是几个站点的配置都监听80端口,但不监听443,443交由stream分流管理。)
另外,类似下面的站点配置文件写法,两个server分别代表什么意思?谢谢!
server {
        listen 80;
        server_name 域名;
        if ($host = 域名) {
                return 301 https://$host$request_uri;
        }
        return 404;
}

server {
        listen 127.0.0.1:3xxxx;
        server_name 域名;
        index index.html;
        root /var/www/html/bbcd;
}

tcpdump 发表于 2022-1-1 11:01
能重复监听,你看网上说的是错的

80端口可以重复,443不可以重复。

SNI 分流由 nginx 执行

iks 发表于 2022-1-1 10:46
SNI 分流由 nginx 执行

这个我知道,但是监听80端口可以重复监听不冲突不知道原理

Delly 发表于 2022-1-1 10:48
这个我知道,但是监听80端口可以重复监听不冲突不知道原理

根据 HTTP Header 的 Host 执行分流

iks 发表于 2022-1-1 10:49
根据 HTTP Header 的 Host 执行分流

这个不太明白。有说因为域名不同,所以不冲突。但是443却不能冲突。

能重复监听,你看网上说的是错的

Delly 发表于 2022-1-1 11:03
80端口可以重复,443不可以重复。

都能重复

一个 nginx 部署多个 ssl 站点不是常规操作吗,怎么 443 就不能“重复”了
稍微科普一下,任何端口都不能重复监听