• Nginx虚拟主机


    什么是虚拟主机


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

    通过 Nginx 可以实现虚拟主机的配置,Nginx 支持三种类型的虚拟主机配置

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

    Nginx 配置文件的结构


    # ...
    events {
    	# ...
    }
    
    http {
    	# ...
    	server{
    		# ...
    	}
    	
    	# ...
    	server{
    		# ...
    	}
    }
    

    注: 每个 server 就是一个虚拟主机

    基于端口的虚拟主机配置


    需求


    • Nginx对外提供80和8080两个端口监听服务
    • 请求80端口则请求html80目录下的html
    • 请求8080端口则请求html8080目录下的html

    创建目录及文件


    在 /usr/local/docker/nginx/wwwroot 目录下创建 html80 和 html8080 两个目录,并分辨创建两个 index.html 文件

    配置虚拟主机


    修改 /usr/local/docker/nginx/conf 目录下的 nginx.conf 配置文件

    worker_processes  1;
    
    events {
        worker_connections  1024;
    }
    
    http {
        include       mime.types;
        default_type  application/octet-stream;
    
        sendfile        on;
        
        keepalive_timeout  65;
        # 配置虚拟主机 192.168.75.145
        server {
    	# 监听的ip和端口,配置 192.168.75.145:80
            listen       80;
    	# 虚拟主机名称这里配置ip地址
            server_name  192.168.75.145;
    	# 所有的请求都以 / 开始,所有的请求都可以匹配此 location
            location / {
    	    # 使用 root 指令指定虚拟主机目录即网页存放目录
    	    # 比如访问 http://ip/index.html 将找到 /usr/local/docker/nginx/wwwroot/html80/index.html
    	    # 比如访问 http://ip/item/index.html 将找到 /usr/local/docker/nginx/wwwroot/html80/item/index.html
    
                root   /usr/share/nginx/wwwroot/html80;
    	    # 指定欢迎页面,按从左到右顺序查找
                index  index.html index.htm;
            }
    
        }
        # 配置虚拟主机 192.168.75.245
        server {
            listen       8080;
            server_name  192.168.75.145;
    
            location / {
                root   /usr/share/nginx/wwwroot/html8080;
                index  index.html index.htm;
            }
        }
    }
    

    基于域名的虚拟主机配置


    需求


    • 两个域名指向同一台Nginx服务器,用户访问不同的域名显示不同的网页内容
    • 两个域名是admin.servicer.com和admin.test.com
    • Nginx服务器使用的虚拟机是192.168.1.22

    配置Windows Hosts文件


    • 通过host文件指定admini.service.com和admin.test.com对应192.168.1.22
    • 修改window的hosts文件 (c:windowSystem32driversetc)

    创建目录及文件


    在 /usr/local/docker/nginx/wwwroot 目录下创建 htmlservice 和 htmlweb 两个目录,并分别创建两个 index.html 文件

    配置虚拟主机

    user  nginx;
    worker_processes  1;
    
    events {
        worker_connections  1024;
    }
    
    http {
        include       mime.types;
        default_type  application/octet-stream;
    
        sendfile        on;
    
        keepalive_timeout  65;
        server {
            listen       80;
            server_name  admin.service.itoken.funtl.com;
            location / {
                root   /usr/share/nginx/wwwroot/htmlservice;
                index  index.html index.htm;
            }
    
        }
    
        server {
            listen       80;
            server_name  admin.web.itoken.funtl.com;
    
            location / {
                root   /usr/share/nginx/wwwroot/htmlweb;
                index  index.html index.htm;
            }
        }
    }
    
  • 相关阅读:
    10 个雷人的注释,就怕你不敢用!
    Java 14 之模式匹配,非常赞的一个新特性!
    poj 3661 Running(区间dp)
    LightOJ
    hdu 5540 Secrete Master Plan(水)
    hdu 5584 LCM Walk(数学推导公式,规律)
    hdu 5583 Kingdom of Black and White(模拟,技巧)
    hdu 5578 Friendship of Frog(multiset的应用)
    hdu 5586 Sum(dp+技巧)
    hdu 5585 Numbers
  • 原文地址:https://www.cnblogs.com/yjp372928571/p/12759344.html
Copyright © 2020-2023  润新知