美文网首页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