nginx详解之配置虚拟主机

配置多个虚拟主机

就是在一台服务器启动多个网站。

如何区分不同的网站:

1、域名不同

2、端口不同


一:下面通过配置端口不同,访问不同的虚拟主机

1:编辑nginx.conf配置文件

vim conf/nginx.conf

下面是默认的主机配置


2:添加一个端口不一样的主机,并指向另外一个静态页面

    server {
        listen       81;
        server_name  localhost;


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

    }

3:重新copy一份安装目录下的html文件,同时你可以修改一下你的html目录下的index.html文件,一遍下面访问时辨别

sudo cp -r html html-81


4:重新启动你的nginx

./nginx -s reload

5:测试

访问80端口的


访问81端口的



二:通过域名区分不同的主机

1:什么是域名

域名就是网站。

www.baidu.com

www.taobao.com

www.jd.com

Tcp/ip

 

Dns服务器:把域名解析为ip地址。保存的就是域名和ip的映射关系。

一级域名:

Baidu.com

Taobao.com

Jd.com

二级域名:

www.baidu.com

Image.baidu.com

Item.baidu.com

三级域名:

1.Image.baidu.com

Aaa.image.baidu.com

 

一个域名对应一个ip地址,一个ip地址可以被多个域名绑定。查看百度的,也是绑定的58.217.200.112


当你自己的电脑访问一个域名时,首先,他会看你本机的hosts文件中配置的域名和ip的对应关系,查看你配置的域名和ip,看是否有域名一样的,有则,访问对应的ip;如果没有找到,则,走Dns服务器,dns服务器也会去查找有没有对应的ip,有则返回ip,再返回这个ip;

Windows下的hosts文件在:C:\Windows\System32\drivers\etc

liunx下的hosts文件在:(/etc/hosts)

这个hosts文件配置规则是:ip 空格 域名

注意,这个是不用端口了,配了也无效


下面我是用线上的域名进行配置,将域名绑定自己线上的ip;我的是wangshufu.cn指向ip39.106.32.72


电脑访问wangshufu.cn时,查看本机的hosts文件是否有配置,无,则访问呢Dns服务器,然后Dns返回ip,浏览器则访问这个ip




2:面增加的nginx配置文件,并重启nginx

    server {
        listen       80;
        server_name  wangshufu.cn;


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




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

3:测试访问wangshufu.cn;dns服务器返回ip,访问,又因为我们域名是wangshufu.cn,则访问html-81下的index.html



如果没有线上的域名,你可以更改你电脑的hosts文件,把域名和ip配置一下,也是可以的
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值