虚拟主机的概念
虚拟主机是指在网络服务器上分出一定的磁盘空间,用户可以租用此部分空间,以供用户放置站点及应用组件,提供必要的数据存放和传输功能。虚拟主机就是把一台物理服务器划分成多个“虚拟”的服务器,各个虚拟主机之间完全独立,在外界看来,每一台虚拟主机和一台单独的主机的表现完全相同。所以这种被虚拟化的逻辑主机被形象地称为“虚拟主机”。
使用虚拟主机的优点
由于多台虚拟主机共享一台真实主机的资源,每个虚拟主机用户承受的硬件费用、网络维护费用、通信线路的费用均大幅度降低。许多企业建立网站都采用这种方法,这样不仅大大节省了购买机器和租用专线的费用,网站服务器服务器管理简单,诸如软件配置、防病毒、防攻击等安全措施都由专业服务商提供,大大简化了服务器管理的复杂性;同时也不必为使用和维护服务器的技术问题担心,更不必聘用专门的管理人员。
三种虚拟主机
1、基于域名的虚拟主机,通过域名来区分虚拟主机
2、基于端口的虚拟主机,通过端口来区分虚拟主机
3、基于ip的虚拟主机,很少用。
基于IP的虚拟主机
server {
listen 80;
server_name 192.168.78.9;
location / {
proxy_pass http://test;
}
}
基于域名的虚拟主机
存在场景:例如有test1和test2两个不同的域名,这里根据域名的不同,将用户的请求分发到不同的服务器上。
注意:基于域名的虚拟机主机在模拟应用场景时,需要在windows系统的hosts文件里配置域名映射
http {
upstream test1{
server srv1.example.com;
server srv2.example.com;
}
upstream test2{
server srv3.example.com;
server srv4.example.com;
}
server {
listen 80;
//访问test2.com的时候,会把请求导到test1的服务器组里
server_name test2.com;
location / {
proxy_pass http://test1;
}
}
server {
listen 80;
//访问test1.com的时候,会把请求导到test2的服务器组里
server_name test1.com;
location / {
proxy_pass http://test2;
}
}
}
基于端口的虚拟主机
http {
upstream test1{
server srv1.example.com;
server srv2.example.com;
}
upstream test2{
server srv3.example.com;
server srv4.example.com;
}
server {
//当访问nginx的80端口时,将请求导给test1组
listen 80;
server_name localhost;
location / {
proxy_pass http://test1;
}
}
server {
//当访问nginx的81端口时,将请求导给test2组
listen 81;
server_name localhost;
location / {
proxy_pass http://test2;
}
}
}
介绍完毕。
670

被折叠的 条评论
为什么被折叠?



