在nginx的配置中,虚拟主机是一个重要概念,它允许单个nginx服务器为多个域名或IP地址提供服务,而不需要为每个域名或IP地址运行单独的nginx实例

创建项目路径

1
2
3
4
5
6
7
8
9
10
11
12
13
#在根目录下创建统一项目路径 /www/worfcode
cd /
mkdir www
cd www/
mkdir worfcode

#在worfcode中创建两个项目路径:项目一 caro2o/index.html、项目二 worf2w/index.html
cd /www/worfcode
mkdir {caro2o,worf2w}

#在在项目一、项目二中的文件index.html中添加内容
echo '<h1>CARO2O:Project I<h1>' >index.html #项目一
echo '<h1>WORF2W:Project II<h1>' >index.html #项目二

虚拟主机配置

在配置文件 /opt/nginx/nginx-1.26.1_install/conf/nginx.conf中的 server项进行配置

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
# 打开nginx.conf配置文件
vi /opt/nginx/nginx-1.26.1_install/conf/nginx.conf

#找到 server 项进行编辑
#虚拟主机的配置
server {
listen 81; #该虚拟主机监听的端口
server_name caro2o.worfwode.cn; #虚拟主机监听的域名/ip(此处时基于域名)

#charset koi8-r;

#access_log logs/host.access.log main;
#当请求到当前虚拟主机后,映射什么访问路径,/表示映射根路径请求到哪里
location / {
root /www/worfcode/caro2o; #表示访问当前路径时,访问哪个目录中的内容,html表示的是相对路径
index index.html; #当请求路径后面不携带任意文件时,默认访问的文件名(可以只保留一个)
}

可以利用本地hosts文件来使用域名访问

根据上述配置可创建多台虚拟主机

验证

image-20240612152931067

__END__