nginx-conf配置文件解读

本文详细介绍了如何在本地Windows环境下配置Nginx的虚拟主机,包括基于端口、域名和IP的虚拟主机设置。同时,还讲解了如何通过Nginx进行代理转发,实现单个服务和负载均衡转发到多个服务。通过示例配置文件和实际访问演示,展示了Nginx在多站点管理和流量调度中的应用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1. 虚拟主机

 在本地windows上的host文件配置两个域名和ip的映射。


10.4.xx.5 jllvm.com
10.4.xx.5 lxfvm.com

 1.1 居于端口的虚拟主机

描述:监听端口号不一样,server_name下配置的域名均为localhost。

server_name下配置的域名均为localhost时,如果访问过来的域名没有在配置文件中匹配到,那么最后默认匹配到localhost。

nginx配置文件conf中配置了两个server:

#一个server代表一个站点,即可以理解为一个主机服务。
 #一个主机上想跑多个节点就可以通过复制多个server来设置
 #也可以理解为虚拟主机
    server {
        listen       80;  //监听80端口,如果域名配置了当前主机的ip,那么可以通过ip+端口号定位到这个server
        server_name  localhost;//如果多个server监听同一个端口号,那么可以在severa_name配对应的域名来定位想要访问的server。即使监听的端口号一样,也不影响路由定位server。

        location / {
            root   /usr/local/nginx/html/jllvm.com; #默认访问哪个目录上的文件,可以自定义配置想要访问的目录
            index  index.html index.htm; //index下对应的是html页面为默认的访问的页面文件。可以自定义。
        }

      
        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }

   
    }
	server {
        listen       88; //监听88端口,如果域名配置了当前主机的ip,那么可以通过ip+端口号定位到这个server
        server_name  localhost;

        location / {
            root   /usr/local/nginx/html/lxfvm.com;
            index  index.html index.htm;
        }
    
        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }

   
    }

在/usr/local/nginx/html目录下新建了jllvm.com、lxfvm.com两个文件夹:

 每个文件夹下分别创建index.html文件:

启动nginx服务后,直接通过域名+端口号访问:

http://lxfvm.com:88/

http://jllvm.com:80/

 路由到不同的页面。

1.2 居于域名的虚拟主机

描述:监听端口号一样,server_name下配置的域名不一样。

server_name分别配置了 jllvm.com、lxfvm.com

#一个server代表一个站点,即可以理解为一个主机服务。
 #一个主机上想跑多个节点就可以通过复制多个server来设置
    server {
        listen       80;  //监听80端口,如果域名配置了当前主机的ip,那么可以通过ip+端口号定位到这个server
        server_name  jllvm.com;//如果多个server监听同一个端口号,那么可以在severa_name配对应的域名来定位想要访问的server。即使监听的端口号一样,也不影响路由定位server。

        location / {
            root   /usr/local/nginx/html/jllvm.com; #默认访问哪个目录上的文件,可以自定义配置想要访问的目录
            index  index.html index.htm;
        }

      
        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }

   
    }
	server {
        listen       80; 
        server_name  lxfvm.com;

        location / {
            root   /usr/local/nginx/html/lxfvm.com;
            index  index.html index.htm;
        }
    
        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }

   
    }

通过两个域名+80端口号访问,可以路由到对应的server站点访问配置的页面。

http://lxfvm.com/

http://jllvm.com/

 1.3 居于ip的虚拟主机

一块主机绑定多个ip地址。

2. 代理转发到其它服务

转发到单个服务:

server {
        listen       88;
        server_name  localhost;

        location / {
            proxy_pass   http://127.0.0.1; #通过代理转发到其它服务
        }


        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }

        
    }

配置upstream,负载均衡转发到多个服务:

upstream myserver {
       server 10.4.xx.5:8080 weight=1; #权重为 1:5
       server 10.4.xx.5:8081 weight=5;
}


server {
        listen       88;
        server_name  localhost;

        location / {
            proxy_pass   http://myserver; #通过代理转发到多个服务服务
        }


        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }

        
    }

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

荆茗Scaler

你的鼓励是我创作最大的动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值