手把手教你配置【Nginx的虚拟主机】

您所在的位置:网站首页 amd5600g主机配置 手把手教你配置【Nginx的虚拟主机】

手把手教你配置【Nginx的虚拟主机】

2023-04-07 18:47| 来源: 网络整理| 查看: 265

一、虚拟主机的概念 1.1 什么是虚拟主机

虚拟主机,就是把一台物理服务器划分成多个 “虚拟” 的服务器,这样我们的一台物理服务器就可以当做多个服务器来使用,从而可以配置多个网站。Nginx 提供虚拟主机的功能,就是为了让我们不需要安装多个 Nginx,就可以运行多个域名不同的网站。

每台虚拟主机都可以是一个独立的网站,可以具有独立的域名,具有完整的Intemet服务器功能(WWW、FTP、Email等),同一台主机上的虚拟主机之间是完全独立的。从网站访问者来看,每一台虚拟主机和一台独立的主机完全一样。

Nginx 下,一个 server 标签就是一个虚拟主机。nginx 的虚拟主机就是通过主配置文件 nginx.conf 中 server 节点指定的,想要设置多个虚拟主机,配置多个server节点即可。

0.png

1.2 配置虚拟主机的方法

配置虚拟主机有三种方法:

基于域名的虚拟主机 : 不同的域名、相同的IP(此方式应用最广泛)。

基于IP地址的虚拟主机 : 不同的域名、不同的IP ( 需要加网络接口 ,应用的不广泛), 基于IP地址。

基于端口的虚拟主机 : 不使用域名、IP来区分不同站点的内容,而是用不同的TCP端口号。

二、基于域名的 Nginx 虚拟主机 2.1 为虚拟主机提供域名解析  [root@yuji ~]# echo "192.168.72.10 www.yuji.com www.nan.com" >> /etc/hosts 复制代码

1.png

2.2 为虚拟主机准备网页文档  [root@yuji ~]# mkdir -p /var/www/html/yuji  [root@yuji ~]# mkdir -p /var/www/html/nan  [root@yuji ~]# echo 'www.yuji.com' > /var/www/html/yuji/index.html  [root@yuji ~]# echo 'www.nan.com' > /var/www/html/nan/index.html 复制代码

2.png

2.3 修改Nginx的配置文件

配置两个server块,分别设置不同的域名。

 [root@yuji ~]# vim /usr/local/nginx/conf/nginx.conf  .........  http {  .........       server {             listen   80;             server_name   www.yuji.com;       #设置域名www.yuji.com             charset   utf-8;             access_log   logs/www.yuji.access.log;  #设置日志名             location / {                   root   /var/www/html/yuji;  #设置 www.yuji.com 的工作目录                   index   index.html   index.php;             }             error_page   500 502 503 504 /50x.html;             location = 50x.html {                   root   html;             }       }  ​       server {             listen   80;             server_name   www.nan.com;     #设置域名www.nan.com             charset   utf-8;             access_log   logs/www.nan.access.log;  #设置日志名             location / {                   root   /var/www/html/nan;   #设置 www.nan.com 的工作目录                   index   index.html   index.php;             }             error_page   500 502 503 504 /50x.html;             location = 50x.html {                   root   html;             }       }  } 复制代码

3.png

2.4 重启服务,访问测试  [root@yuji ~]# nginx -t     //检查配置文件的配置项是否有误  [root@yuji ~]# systemctl restart nginx //重启Nginx服务  ​  浏览器访问 http://www.yuji.com 和 http://www.nan.com 复制代码

4.png

5.png

6.png

三、基于ip地址的nginx虚拟主机

两个server块,设置不同的监听地址即可,其他跟基于域名都一样。

例如:

listen 192.168.72.10:80 www.yuji.com listen 192.168.72.20:80 www.nan.com 3.1 设置临时ip,以达到一台服务器拥有多个ip地址,不同ip访问不同的服务页面  [root@yuji ~]# ifconfig ens33:0 192.168.72.20/24 复制代码

7.png

3.2 修改配置文件,之后重启服务,访问测试。  [root@yuji ~]# vim /usr/local/nginx/conf/nginx.conf  .........  http {  .........       server {             listen   192.168.72.10:80;      #设置监听地址192.168.72.10             server_name   www.yuji.com;                                     charset   utf-8;             access_log   logs/www.yuji.access.log;    #设置日志名             location / {                   root   /var/www/html/yuji;     #设置 www.yuji.com 的工作目录                   index   index.html   index.php;             }             error_page   500 502 503 504 /50x.html;             location = 50x.html {                   root   html;             }       }  ​       server {             listen   192.168.72.20:80;       #设置监听地址192.168.72.20             server_name   www.nan.com;                                     charset   utf-8;             access_log   logs/www.nan.access.log;     #设置日志名             location / {                   root   /var/www/html/nan;          #设置 www.yuji.com 的工作目录                   index   index.html   index.php;             }             error_page   500 502 503 504 /50x.html;             location = 50x.html {                   root   html;             }       }  }  ​  ​  #重启服务,访问测试  [root@yuji ~]# nginx -t //检查配置文件的配置项是否有误  #如果服务器只有一个ip,即没有设置临时ip,则 nginx -t 会报错,错误信息为不能绑定ip  [root@yuji ~]# systemctl restart nginx //重启nginx服务  ​  浏览器访问 http://192.168.72.10 和 http://192.168.72.20 复制代码

8.png

9.png

10.png

11.png

四、基于端口的nginx虚拟主机

修改IP地址后面的端口即可。

 [root@yuji ~]# vim /usr/local/nginx/conf/nginx.conf  .........  http {  .........       server {             listen   192.168.72.10:666;   #设置监听端口为666             server_name   www.kgc.com;                                     charset   utf-8;             access_log   logs/www.yuji.access.log;   #设置日志名             location / {                   root   /var/www/html/yuji;     #设置 www.kgc.com 的工作目录                   index   index.html   index.php;             }       ......       }  ​       server {             listen   192.168.72.10:888;    #设置监听端口为888             server_name   www.nan.com;                                     charset   utf-8;             access_log   logs/www.nant.access.log;   #设置日志名             location / {                   root   /var/www/html/nan;    #设置 www.benet.com 的工作目录                   index   index.html   index.php;             }       .......       }  }  ​  [root@yuji ~]# nginx -t //检查配置文件的配置项是否有误  [root@yuji ~]# systemctl restart nginx //重启nginx服务  ​  浏览器访问 http://192.168.72.10:666 和 http://192.168.72.10:888 复制代码

12.png

13.png

14.png



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3