美文网首页Ngix
nginx 的三种虚拟主机

nginx 的三种虚拟主机

作者: 互联网中的一个咸鱼 | 来源:发表于2019-10-15 16:27 被阅读0次

什么是虚拟主机?
虚拟主机是一种特殊的软硬件技术,它可以将网络上的每一台计算机分成多个虚拟主机,每个虚拟主机可以独立对外提供www服务,这样就可以实现一台主机对外提供多个web服务,每个虚拟主机之间是独立的,互不影响。

  • 基于域名的虚拟主机
  • 基于ip的虚拟主机
  • 基于端口的虚拟主机

一、

1、 基于域名的虚拟主机

server {
        listen 80;             #监听的端口
        server_name www.jpx01.com;   #域名
        root         /usr/share/nginx/web1;        #root目录
        access_log   /var/log/www.jpx01.com.log main;    #访问日志文件
        error_log    /var/log/www.jpx01.com.error.log;   #错误日志文件
        location / {
                index index.html;
        }

server {
        listen 80;             #监听的端口
        server_name www.jpx02.com;   #域名
        root         /usr/share/nginx/web2;        #root目录
        access_log   /var/log/www.jpx02.com.log main;    #访问日志文件
        error_log    /var/log/www.jpx02.com.error.log;   #错误日志文件
        location / {
                index index.html;
        }

server {
        listen 80;             #监听的端口
        server_name www.jpx03.com;   #域名
        root         /usr/share/nginx/web3;        #root目录
        access_log   /var/log/www.jpx03.com.log main;    #访问日志文件
        error_log    /var/log/www.jpx03.com.error.log;   #错误日志文件
        location / {
                index index.html;
        }

2、 重新加载配置文件

systemctl reload nginx

3、 在对应的目录下创建对应的html
4、 浏览器访问 不同的域名 得到不同的html

http://jpx01.com/
http://jpx02.com/

二、基于ip的虚拟主机
1、 一块网卡绑定多个ip

ifconfig  netname:1 ip1
ifconfig  netname:2 ip2

2、 配置通过ip区分的虚拟机

server {
    listen ip1:80;
    server_name www.ip1.com;
    root         /usr/share/nginx/html;
    access_log   /var/logs/www.ip1.com.log main;
    error_log    /var/logs/www.ip1.com.error.log;
    location / {
        root html;
        index index.html index.htm;
        }
}

server {
    listen ip2:80;
    server_name www.ip1.com;
    root         /usr/share/nginx/html;
    access_log   /var/logs/www.ip2.com.log main;
    error_log    /var/logs/www.ip2.com.error.log;
    location / {
        root html;
        index index.html index.htm;
        }
}

3、 重新加载配置文件

systemctl reload nginx

4、 浏览器访问

http://ip1
http://ip2

5、 删除绑定的ip

ifconfig netname:1 ip1 down

三、 基于端口的虚拟机

server {
    listen 8000;
    server_name www.1000phone01.com;
    root         /usr/share/nginx/html;
    access_log   /var/logs/www.1000phone01.com.log main;
    error_log    /var/logs/www.1000phone01.com.error.log;
    location / {
        root html;
        index index.html index.htm;
        }
}
server {
    listen 8080;
    server_name www.1000phone01.com;
    root         /usr/share/nginx/html;
    access_log   /var/logs/www.1000phone02.com.log main;
    error_log    /var/logs/www.1000phone02.com.error.log;
    location / {
        root html;
        index index.html index.htm;
        }
}


systemctl reload nginx

相关文章

网友评论

    本文标题:nginx 的三种虚拟主机

    本文链接:https://www.haomeiwen.com/subject/dsusmctx.html