Nginx--Nginx配置虚拟主机

15 篇文章 0 订阅
4 篇文章 0 订阅

配置虚拟主机

   虚拟主机介绍

      虚拟主机是一种特殊的软硬件技术,它可以将网络上的每一台计算机分成多个虚拟主机,每个虚拟主机可以独立对外提供 www 服务,这样就可以实现一台主机对外提供多个web 服务,每个虚拟主机之间是独立的,互不影响的。
      虚拟主机技术是互联网服务器采用的节省服务器硬件成本的技术,虚拟主机技术主要应用于 HTTP(Hypertext Transfer Protocol,超文本传输协议)服务,将一台服务器的某项或者全部服务内容逻辑划分为多个服务单位,对外表现为多个服务器,从而充分利用服务器硬件资源。
在这里插入图片描述

    Nginx 的虚拟主机配置方式

        Nginx 支持三种类型的虚拟主机配置

  1. 基于 IP 的虚拟主机
  2. 基于端口的虚拟主机
  3. 基于域名的虚拟主机
    1 基于 IP 的虚拟主机配置方式
        1.1 需求

        一台 Linux 服务器绑定两个ip:192.168.0.123、192.168.0.124
访问不同的 ip 请求不同的 html 目录,即:

  • 访问 http://192.168.0.123 将访问“html123”目录下的 html 网页
  • 访问 http://192.168.0.124 将访问“html124”目录下的 html 网页
        1.2 Linux 绑定多 IP

       Linux 操作系统允许绑定多 IP。使用 IP 别名的方式,在一块物理网卡上可以绑定多个lP 地址。这样就能够在使用单一网卡的同一个服务器上运行多个基于 IP 的虚拟主机。但是在绑定多 IP 时需要将动态的 IP 分配方式修改为静态的指定 IP

   修改网卡信息 1

vim /etc/sysconfig/network-scripts/ifcfg-eth0

DEVICE=eth0
ONBOOT=yes
BOOTPROTO=static
IPADDR=192.168.0.123
NETMASK=255.255.255.0
GATEWAY=192.168.0.1
DNS1=4.4.4.4
DNS2=8.8.8.8
IPV6INIT=no

      将/etc/sysconfig/network-scripts/ifcfg-eth0 文件复制一份,命名为 ifcfg-eth0:1 名字需要注意格式
      修改其中内容:

DEVICE=eth0:1
IPADDR=192.168.0.124

其他项不用修改
重启系统

在这里插入图片描述

        1.3 修改nginx.conf 配置文件

在这里插入图片描述
      首先修改,必须要是root用户,否则权限不够
在这里插入图片描述

      修改后的配置文件

user  root;
worker_processes  1;
events {
    worker_connections  1024;
}
http {
    include       mime.types;
    default_type  application/octet-stream;
    sendfile        on;
    keepalive_timeout  65;
    
    #每一个server就是一个虚拟的主机
    server {
        listen       80;
        #指定虚拟主机的ip或者域名
        server_name  192.168.0.123;
        #访问时的配置
        location / {
            #访问 / 时 进入的目录
            root   html123;    #访问的目录可以写绝对路径
            #默认显示的页面
            index  index.html index.htm;
        }
        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }
    }
   
    #每一个server就是一个虚拟的主机
    server {
        listen       80;
      #指定虚拟主机的ip或者域名
        server_name  192.168.0.124;
       #访问时的配置
        location / {
       #访问 / 时 进入的目录
            root   html124;   #访问的目录可以写绝对路径
       #默认显示的页面
            index  index.html index.htm;
        }
        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }
    }
}



    2 基于端口的虚拟主机配置方式
       2.1 需求

       Nginx 对提供 8080 与 9090 两个端口的监听服务

  • 请求 8080 端口则访问 html8080 目录下的 index.html
  • 请求 9090 端口则访问 html9090 目录下的 index.html
        2.1 创建 HTML 目录

在这里插入图片描述
      修改后的配置文件

user  root;
worker_processes  1;
events {
    worker_connections  1024;
}
http {
    include       mime.types;
    default_type  application/octet-stream;
    sendfile        on;
    keepalive_timeout  65;

    #每一个server就是一个虚拟的主机
    server {
        listen       8888;
        #指定虚拟主机的ip或者域名
        server_name  192.168.0.123;
        #访问时的配置
        location / {
            #访问 / 时 进入的目录
            root   html8888;     #访问的目录可以写绝对路径
            #默认显示的页面
            index  index.html index.htm;
        }
        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }   
    }
    
    #每一个server就是一个虚拟的主机
    server {
        listen       9999;
        #指定虚拟主机的ip或者域名
        server_name  192.168.0.123;
        #访问时的配置
        location / {
            #访问 / 时 进入的目录
            root   html9999; #访问的目录可以写绝对路径
            #默认显示的页面
            index  index.html index.htm;
        }
        
        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }
        
    }
}



    3 基于域名的虚拟主机配置方式
       3.1 需求

       两个域名指向同一个 nginx 服务器,用户访问不同的域名时显示不同的内容。
       域名规划:

  • test.shouhe.com
  • test.sige.com
       3.2 创建 HTML 目录

在这里插入图片描述

       3.3 修改 windows 的 的 hosts 文件配置域名与 ip 的映射

文件路径:

C:\Windows\System32\drivers\etc

在这里插入图片描述

      修改后的配置文件

user  root;
worker_processes  1;
events {
    worker_connections  1024;
}
http {
    include       mime.types;
    default_type  application/octet-stream;
    sendfile        on;
    keepalive_timeout  65;
   
	#基于域名
    server {
        listen       80;
		#指定虚拟主机的ip或者域名
        server_name  test.qingniao.com;
		#访问时的配置
        location / {
			#访问 / 时 进入的目录
            root   html-qingniao;   可以使用绝对路径
			#默认显示的页面
            index  index.html index.htm;
        }
        
        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }
        
    }
    #基于域名
    server {
        listen       80;
        #指定虚拟主机的ip或者域名
        server_name  test.sige.com;
        #访问时的配置
        location / {
			#访问 / 时 进入的目录
            root   html-sige;
			#默认显示的页面
            index  index.html index.htm;
        }
        
        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }
    }
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值