前言
环境:CentOS 7.9 nginx version: nginx/1.18.0
下面对nginx
的配置文件进行设置,配置基于域名的多个虚拟机主机
了解nginx.conf结构
worker_processes 1; #一个work进程
events {
worker_connections 1024; #每个work进程最大能有1024个连接
}
http { #http块
include mime.types;
default_type application/octet-stream;
sendfile on;
keepalive_timeout 65;
server { #虚拟主机server块
listen 80; #监听的端口
server_name localhost; #虚拟主机名,可以用IP地址或域名
location / { #location块
root html; # root表示站点的根目录是html
index index.html index.htm;
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}
}
当配置多个虚拟主机时就是添加多个server
块。
基于不同域名配置多个虚拟机主机,共用1个端口
nginx
配置三个虚拟主机,分别基于域名fujiseiko_first、fujiseiko_second、fujiseiko_third
,监听都用80端口,主机站点目录方别是:html/fujiseiko_first、html/fujiseiko_second、html/fujiseiko_third
先创建这3个目录:cd /usr/local/nginx/html/ && mkdir fujiseiko_first fujiseiko_second fujiseiko_third
在各自目录下创建一个index.html
文件,内容分别写上各自的域名即可
开始配置虚拟主机:
worker_processes 1;
events {
worker_connections 1024;
}
http {
include mime.types;
default_type application/octet-stream;
sendfile on;
keepalive_timeout 65;
server { #第1个虚拟主机
listen 80; #都监听80端口
server_name www.fujiseiko_first.com; #基于域名www.fujiseiko_first.com
location / {
root html/fujiseiko_first; #根站点位置是html/fujiseiko_first
index index.html index.htm;
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}
}
server { #第2个虚拟主机
listen 80; #都监听80端口
server_name www.fujiseiko_second.com; #基于域名www.fujiseiko_second.com
location / {
root html/fujiseiko_second ; #根站点位置是html/fujiseiko_second
index index.html index.htm;
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}
}
server { #第3个虚拟主机
listen 80; #都监听80端口
server_name www.fujiseiko_third.com; #基于域名www.fujiseiko_third.com
location / {
root html/fujiseiko_third; #根站点位置是html/fujiseiko_third
index index.html index.htm;
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}
}
}
这样3个基于域名的虚拟主机就配置完了,既然是基于域名,那就要能解析域名,下面在Windows
本地域名解析文件C:\Windows\System32\drivers\etc\hosts
文件配置域名:
ping 都能正常解析
检查语法并重新加载nginx
nginx -t #修改配置文件后必须检查语法,显示语法OK则表示正常
nginx -s reload #重新加载配置文件
网页测试
分别输入:http://www.fujiseiko_first.com:80、http://www.fujiseiko_second.com:80、http://www.fujiseiko_third.com:80
都能正常显示