tnblog
首页
登录

使用nginx在同一台服务器上配置多个二级域名2

145人阅读 2019/6/14 14:24 评论:0 手机 收藏 关注
分类: 云服务


在第一篇中介绍了一种方法:

http://www.tnblog.net/aojiancc2/article/details/2430


其实还可以使用第二种方法,也就是配置多个server

   server {
        listen       80;
        server_name  m.tnblog.net;

        #charset koi8-r;

        #access_log  logs/host.access.log  main;

        location / {
             proxy_set_header X-Real-IP $remote_addr;

             proxy_set_header Host $http_host;

             proxy_pass http://127.0.0.1:8090;
       }
    }

    server {
        listen       80;
        server_name  wx.tnblog.net;

        #charset koi8-r;

        #access_log  logs/host.access.log  main;

        location / {
             proxy_set_header X-Real-IP $remote_addr;
             proxy_set_header Host $http_host;

             proxy_pass http://127.0.0.1:8095;
       }
    }

效果如下:

当访问m.tnblog.net的时候


当访问wx.tnblog.net的时候

说一下对配置多个server的个人理解:

如果有多个server,nginx会进行匹配,匹配到后就不会进行下面的匹配了


如果没有匹配到就默认执行第一个server的

比如这里:上面我们server_name配置成m.tnblog.net,第二个server_name乱写

这样在访问wx.tnblog的时候,这两个都不会匹配到,他就会请求第一个了,也就是8090端口,也就是tnblog的手机端

当然如果换一个顺序就是执行的8095那个端口了


如果这个推理没有问题,那么按照这个逻辑来说,匹配到就执行匹配不到就默认第一个,那么我们写一个可以直接匹配到的,

比乱写的名字效率会高一些哦。所以这也就是为什么我们要搞得原理,这样我们可以更好的使用,至少能提高执行效率



这里的多个server还可以监听不同的端口:

例如我们监听两个不同的端口:一个是8090,一个是9092

这里的8090会转到两个代理的项目去中,由于8092并没有做代理,所以访问8092就是直接访问的nginx本身






评价
关注
自己阳光积极向上,就会吸引阳光积极向上的人和事
文章
6
评论
8
分类
16
关注
16
{{item.ArticleTitle}}
{{item.BlogName}} : {{item.Content}}