server_name的使用

server_name指令,在nginx中起的是虚拟主机里的“以域名区分的虚拟主机的作用”

先说一下虚拟主机的使用方法,有三种:ip、port、域名

ip和port不用说,ip就是拿ip解析区分,用虚拟ip实现;port就是ip后面加port,来实现;

域名就比较好用了,直接使用请求的http头部来区分,既不用写ip,也不用写port,直接用server_name来区分;

例子如下:

虚拟主机test1

server{

server_name  test1.com;

root  /var/www1/;

………

}

虚拟主机test2

server{

server_name test2.com;

root /var/www2/;

………

}

这时,如果DNS解析没有问题的话,(通过改HOSTS实现也可以),你就可以访问test1.com和test2.com了,就像两个不同的网站,而不用像以前一样,拿端口来区分。

原文地址:https://www.cnblogs.com/agostop/p/2579545.html