IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 系统运维 -> Nginx (八) --------- 虚拟主机 -> 正文阅读

[系统运维]Nginx (八) --------- 虚拟主机


一、概念

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

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

例如:www.meituan.com 切换城市,可以看到不同的城市地址不一样(二级域名)
比如一个公司有多个二级域名,没有必要为每个二级域名都提供一台 Nginx 服务器,就可以使用虚拟主机技术,在一台 Nginx 服务器上,模拟多个虚拟服务器。

二、配置虚拟主机方式

1. 基于端口的虚拟主机

基于端口的虚拟主机配置,使用端口来区分;
浏览器使用 同一个域名 + 端口 或 同一个ip地址 + 端口访问;

server {
   	listen 8080;
   	server_name www.myweb.com;
	location /myweb {
	    proxy_pass http://www.myweb.com;
	}
}
server {
	listen 9090;
	server_name www.p2p.com;
	location /p2p {
      	proxy_pass http://www.p2p.com;
	}
}

2. 基于域名的虚拟主机

基于域名的虚拟主机是最常见的一种虚拟主机

server {
    listen       80;
    server_name  www.myweb.com;
    location /myweb {
        proxy_pass http://www. myweb.com;
    }
}
server {
    listen       80;
    server_name  www.p2p.com;
    location /myweb {
       proxy_pass http://www.p2p.com;
    }
}

需要修改一下本地的hosts文件,文件位置:C:\Windows\System32\drivers\etc\hosts

在hosts文件配置:

192.168.160.133 www.myweb.com
192.168.160.133 www.p2p.com

前面是 Linux 的 IP,后面是你自定义的域名。

三、案例

模拟城市站点网站,示例图如下
在这里插入图片描述
配置 3 个Tomcat,每个 Tomcat 一个站点项目

● 由于我们之前已经配置好了两个Tomcat,再配置一个即可

● 拷贝一个新的 Tomcat 9300
在这里插入图片描述
● 修改 Tomcat 9300 的端口号 (修改 server.xml 文件)

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
● 清空三个 Tomcat 的 webapps/ROOT 目录

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
● 使用 Xftp 将三个 war 包上传到三个 tomcat 的 ROOT 目录

● beijing.war上传到 tomcat 9100 服务器上

在这里插入图片描述
● nanjing.war 上传到 tomcat 9200 服务器上

在这里插入图片描述
● tianjin.war上传到 tomcat 9300 服务器上

在这里插入图片描述
● 在 tomcat 启动前,使用 unzip 命令,直接解压三个 war 包,否则 tomcat 启动的时候,自动解压,还是有一个上下文目录的。

在这里插入图片描述
● 在 tomcat 9200 和 9300上执行相同的操作

● 启动三个tomcat

在这里插入图片描述

● 在浏览器中直接访问 tomcat 进行测试

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在 nginx.conf 中配置3个 Nginx 虚拟主机

● 方式一

在 nginx.conf 文件添加三个 server 节点,用于配置三个虚拟主机

server {
    listen       80;
    server_name  beijing.myweb.com;
 	location / {
        proxy_pass http://beijing.myweb.com;
    }
}
server {
     listen       80;
     server_name  nanjing.myweb.com;
 	 location / {
     	proxy_pass http://nanjing.myweb.com;
     }
}
server {
     listen       80;
     server_name  tianjin.myweb.com;
     location / {
         proxy_pass http://tianjin.myweb.com;
     }
}

在这里插入图片描述
● 方式二:通过单独的配置文件配置虚拟主机

通过include的方式引入虚拟主机配置

include /usr/local/nginx/conf/vhost/vhost.conf;

将虚拟目录的配置文件加入到”http {}”部分的末尾,与其他server并列。
文件是隔开的,配置更清晰,主文件没有那么多是server。

在nginx.conf中配置每个虚拟主机请求转发所对应的后端服务器

负载均衡,可以配置多个服务器

upstream beijing.myweb.com {
   	server  127.0.0.1:9100;
}
upstream nanjing.myweb.com {
   	server  127.0.0.1:9200;
}
upstream tianjin.myweb.com {
   	server  127.0.0.1:9300;
}

在这里插入图片描述
修改hosts文件,让 Linux 的 ip 指向到三个站点的域名

C:\Windows\System32\drivers\etc\hosts

192.168.160.133 beijing.myweb.com
192.168.160.133 nanjing.myweb.com
192.168.160.133 tianjin.myweb.com

在这里插入图片描述
重启nginx,通过浏览器访问nginx进行测试

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

  系统运维 最新文章
配置小型公司网络WLAN基本业务(AC通过三层
如何在交付运维过程中建立风险底线意识,提
快速传输大文件,怎么通过网络传大文件给对
从游戏服务端角度分析移动同步(状态同步)
MySQL使用MyCat实现分库分表
如何用DWDM射频光纤技术实现200公里外的站点
国内顺畅下载k8s.gcr.io的镜像
自动化测试appium
ctfshow ssrf
Linux操作系统学习之实用指令(Centos7/8均
上一篇文章      下一篇文章      查看所有文章
加:2022-04-06 16:28:46  更:2022-04-06 16:32:25 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/15 22:28:15-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码