虚拟主机
虚拟主机
虚拟主机 就是把一台物理服务器划分成多个“虚拟”的服务器,每一个虚拟主机都可以有独立的域名和独立的目录,可以独立发布一个网站。
基于IP
应用场景:IP充足的环境,每个网站需要一个IP地址
server {
listen 192.168.11.251:80;
location / {
root html/web1;
index index.html index.htm index.php;
}
}
server {
listen 192.168.11.252:80;
location / {
root html/web2;
index index.html index.htm;
}
}
需要两个ip地址
通过ifconfig查看,本机只有一个IP地址
添加逻辑网卡
ifconfig ens33:1 192.x.x.x/24 up
#第一张网卡就叫ens33,第二张ens33:1
创建目录
mkdir /usr/local/nginx/html/{web1,web2}
创建html
echo web01 >> /usr/local/nginx/html/web1/html01
echo web02 >> /usr/local/nginx/html/web1/html02
基于IP的虚拟主机特点
- 不同IP对应不同网站
- 访问方便,用户直接使用默认端口即可访问
- 服务器需要有多个IP地址
- 维护方便,基于独立IP的站点,便于监控、维护。
基于端口
应用场景:IP不足的环境
- 优点: 多个网站发布使用该配置方法只需要一个IP,节省IP地址
- 缺点 端口你是无法告诉公网用户,无法适用于公网客户,适合内部用户
server {
listen 80;
#server_name www.zutuanxue.com;
location / {
root html/web1;
index index.html index.htm index.php;
}
}
server {
listen 8080;
#server_name www.zutuanxue.com;
location / {
root html/web2;
index index.html index.htm;
}
}
基于端口的虚拟主机特点
- 不同端口对应不同网站
- 访问需要加端口
- 节省IP地址
- 适合私网运行
基于域名
应用场景:一个网站需要有一个域名,目前公网发布网站的首选
server {
listen 80;
server_name web1.zutuanxue.com;
location / {
root html/web1;
index index.html index.htm index.php;
}
}
server {
listen 80;
server_name web2.zutuanxue.com;
location / {
root html/web2;
index index.html index.htm;
}
}
基于域名的虚拟主机特点
- 不同域名对应不同网站
- 需要多个域名 可以是二级或三级域名
- 每个站点使用默认端口,方便用户访问
- 只需要一个IP地址,节约成本
- 适合公网环境