前言:
Nginx的虚拟主机:
虚拟主机是一种特殊的软硬件技术,它可以将网络上的每一台计算机分成多个虚拟主机,每个虚拟主机可以独立对外提供web服务,这样就可以实现一台主机对外提供多个web服务,每个虚拟主机之间是独立的网站、独立的域名,从网站访问者来看,每一台虚拟主机和一台独立的主机完全一样,互不影响。
nginx可以实现虚拟主机的配置,nginx支持三种类型的虚拟主机配置。
- 以端口划分虚拟主机(应用:公司内部网站,web网站管理后台)
- 以域名划分 (应用:外部网站)
- 以IP划分 (一块主机绑定多个IP,用到的比较少)
准备工作
系统:Centos7
Nginx版本: 1.18.0
地址:10.8.161.9
测试机系统:win10
地址:10.8.161.45 (同一局域网)
一.端口划分虚拟主机
- 配置81、82、83端口为虚拟主机端口 ,一下以81端口配置为例,82、83类似。
vim /etc/nginx/conf.d/server1.conf # 在 子配置文件目录conf.d创建81端口的主机
####一下是配置信息
server {
listen 81; # 82、83更换端口即可
server_name localhost; #本机模式下
location / {
root /var/www/nginx/server1; #指定网页的目录
index index.html index.htm; #指定访问的主页
}
}
- 依照配置文件中的目录创建81虚拟主机的网页和网页文件
mkdir -p /var/www/nginx/server1 创建网页目录
vim /var/www/nginx/server1/index.html # 创建网页文件
显示内容:Server1 Host #创建内容
- 检测配置是否正确,并重启nginx服务
[root@localhost ~]# nginx -t # 检测命令,显示以下两行输出信息则配置正确
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful
systemctl restart nginx #重启nginx服务
- 打开浏览器,进行访问服务器地址,后面跟上配置虚拟主机的端口。
二.域名划分虚拟主机
- 在测试机上配置本地DNS解析,方便测试。(本测试机win10)
①
②
③
测试域名可以ping通,并且是10.8.161.9
- 对虚拟主机1进行配置,2、3类似配置
vim /etc/nginx/conf.d/server1.conf # 在 子配置文件目录conf.d创建www.sercer1.com主机
####一下是配置信息
server {
listen 80;
server_name www.server1.com; #指定域名,2、3虚拟主机进行更换即可
location / {
root /var/www/nginx/server1; #指定网页的目录
index index.html index.htm; #指定访问的主页
}
}
- 检测配置是否正确,并重启nginx服务
[root@localhost ~]# nginx -t # 检测命令,显示以下两行输出信息则配置正确
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful
systemctl restart nginx #重启nginx服务
- 打开浏览器测试
三.IP划分虚拟主机
- 在服务器上一块网卡模拟多个IP地址
①查看当前ip
ip -a #查看当前网卡的ip地址
②创建多个虚拟ip
ifconfig ens33:1 10.8.161.66/24
- 对虚拟主机1进行配置,2、3类似配置
vim /etc/nginx/conf.d/server1.conf # 在 子配置文件目录conf.d创建www.sercer1.com主机
####一下是配置信息
server {
listen 80;
server_name 10.8.161.66; #指定虚拟的IP,2、3虚拟主机进行更换即可
location / {
root /var/www/nginx/server1; #指定网页的目录
index index.html index.htm; #指定访问的主页
}
}
- 检测配置是否正确,并重启nginx服务
[root@localhost ~]# nginx -t # 检测命令,显示以下两行输出信息则配置正确
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful
systemctl restart nginx #重启nginx服务
- 打开浏览器测试
======================================================================================================================================================================================================================================================================================================
辛苦浏览观看,如果对你有帮助,请顺手点个赞吧 (σ゚∀゚)σ…:*☆