主nginx和子nginx-------域名-端口-解答

主nginx和子nginx-------域名-端口-解答

想象一下Nginx是一个接待员,每个端口就像接待员的一个电话线,而server_name就像是客户拨打的不同号码。

  • 当你在Nginx配置文件里设定端口(比如80或81),就相当于告诉接待员:“请守在这一条电话线上接听来电。”

  • 如果只有一个电话线(端口),但是你告诉接待员两个不同的号码(server_name)都可以接通这条电话线,那接待员就会很困惑,因为他不知道接到电话时该按哪个号码来处理业务。

所以,在Nginx中,一个端口可以被多个server块共享,但前提是这些server块通过server_name(也就是类似于电话号码的东西)来区分不同的网站或服务。也就是说,你可以设置多个server块监听同一端口(如80或81),但必须保证server_name不同,这样Nginx才能根据访问的域名正确地把请求转发给对应的server块处理。

至于主配置文件和子配置文件的关系,它们只是组织配置的一种方式,并不影响端口和server_name的逻辑。重要的是在整个Nginx配置中,不能有多个server块不加区分地监听同一个端口。

区别
端口:可以被重复定义               --(listen)

域名:多个域名可设置一个端口,但域名不能重复     ---(server name)



posted @ 2024-03-26 10:16  三思博客  阅读(42)  评论(0编辑  收藏  举报