关于在nginx中基于端口Port或基于IP地址的实现多个虚拟主机的配置

发布时间 2023-04-24 20:39:27作者: 520_1351

总之来说,在生产环境下基于端口与IP的虚拟主机实现,相对来说还是比较少

但存在即是合理,存在了就会有用到的场景,具体根据自己的实现情况

因此这里笔者主机介绍一下在nginx中,如何基于端口与IP地址的方式实现虚拟主机的配置

1、如基于端口的虚拟主机的配置,最最简单的语句,只需要在http段下,创建单独server段,再加上一个listen指令即可,如下图

这样之所以能生效,是因为虽然未指定其他配置选项,但其他选项也是有着默认值的,不过只上面那样配置,意义不大

一般更为完整的配置,可以如下:

server {
    listen       8000;
    listen       somename:8080;
    server_name  somename  alias  another.alias;

    location / {
        root   html;
        index  index.html index.htm;
    }
}

总结有如下几点,需要注意一下:

1、一个server段内,可以有多条listen语句,后跟 [IP/主机名]:端口号,其中 [IP/主机名]可以省略,省略后代表使用0.0.0.0(即本机所有的IP地址)

2、listen中如果指定的主机名,那么这个主机名必须要是本机能解析的(一般是配置到/etc/hosts文件中的),而且解析出来是本机上有的IP地址,

3、一个sever虚拟主机中,可以监听多个IP地址,或者多个端口的,只需要通过多个listen语句进行配置即可,多个IP/端口的监听不能写到一条listen语句中

 

 

 

尊重别人的劳动成果 转载请务必注明出处:https://www.cnblogs.com/5201351/p/17350820.html