nginx配置虚拟主机、反向代理和负载均衡
为了实现这个功能,需要修改nginx的配置文件,将nginx.conf清理一下,使结构更清晰。
worker_processes ;
events {
worker_connections ;
}
http {
include mime.types;
default_type application/octet-stream;
sendfile on;
keepalive_timeout ; server {
listen ;
server_name localhost;
location / {
root html;
index index.html index.htm;
}
error_page /50x.html;
location = /50x.html {
root html;
}
}
}
1 基于端口的虚拟主机配置
1.1将html文件复制两份,分别命名为html-81、html-82,并且修改文件夹里面index.html内容,添加端口标识。
root@yatces-virtual-machine:/usr/local/nginx# cp -r html html-
root@yatces-virtual-machine:/usr/local/nginx# cp -r html html-

结构:

1.2nginx配置,新增两个server:配置监听端口为 81 和 82
server {
listen ;
server_name localhost;
location / {
root html-;
index index.html index.htm;
}
error_page /50x.html;
location = /50x.html {
root html;
}
}
server {
listen ;
server_name localhost;
location / {
root html-;
index index.html index.htm;
}
error_page /50x.html;
location = /50x.html {
root html;
}
}
1.3测试
访问192.168.78.131:81 和 192.168.78.131:82


2 基于域名的虚拟主机配置
这边我们使用SwitchHosts修改hosts文件

1.1将html文件复制两份,分别命名为html-www、html-manage,并且修改文件夹里面index.html内容,添加域名文件标识。
root@yatces-virtual-machine:/usr/local/nginx# cp -r html html-www
root@yatces-virtual-machine:/usr/local/nginx# cp -r html html-manage
结构

1.2nginx配置(新增两个server:配置server_name分别为www.yatces.com 和 manage.yatces.com)
server {
listen ;
server_name manage.yatces.com;
location / {
root html-manage;
index index.html index.htm;
}
error_page /50x.html;
location = /50x.html {
root html;
}
}
server {
listen ;
server_name www.yatces.com;
location / {
root html-www;
index index.html index.htm;
}
error_page /50x.html;
location = /50x.html {
root html;
}
}
1.3测试(访问 www.yatces.com 和 manage.yatces.com)


3 nginx的反向代理和负载均衡到 tomcat
3.1先安装jdk 环境,新增tomcat实例
新增两个tomcat实例tomcat1和Tomcat,端口分别是 8081 和 8082 。

修改两个tomcat实例的配置文件:conf/server.xml中的端口信息(每个实例都要修改三个位置的port,防止端口冲突)



分别修改webapps/ROOT/index.jsp,加上端口,以便识别。

分别测试tomcat是否成功:
http://192.168.78.131:8081/

http://192.168.78.131:8082/

3.2配置Nginx
修改本地hosts文件

反向代理配置
修改nginx.conf(在http目录下添加 upstream 和一个server)
upstream tomcatserver1{
server 192.168.78.131:;
}
server {
listen ;
server_name .yatces.com;
#charset koi8-r;
#access_log logs/host.access.log main;
location / {
proxy_pass http://tomcatserver1;
index index.html index.htm;
}
}
访问 http://8081.yatces.com/

负载均衡配置
upstream tomcatserver2{
server 192.168.78.131: weight=; #weight为权重,越高处理的请求越多
server 192.168.78.131: weight=;
}
server {
listen ;
server_name .yatces.com;
#charset koi8-r;
#access_log logs/host.access.log main;
location / {
proxy_pass http://tomcatserver2;
index index.html index.htm;
}
}
访问同一个地址,出现两种情况
http://8082.yatces.com/


nginx的虚拟主机、反向代理、负载均衡配置完成。
manage
nginx配置虚拟主机、反向代理和负载均衡的更多相关文章
- 通过Nginx+tomcat+redis实现反向代理 、负载均衡及session同步
一直对于负载均衡比较陌生,今天尝试着去了解了一下,并做了一个小的实验,对于这个概念有一些认识,在此做一个简单的总结 什么是负载均衡 负载均衡,英文 名称为Load Balance,指由多台服务器以对称 ...
- nginx和tomcat实现反向代理、负载均衡和session共享
这类的文章很多,nginx和tomcat实现反向代理.负载均衡实现很容易,可以参照http://blog.csdn.net/liuzhigang1237/article/details/8880752 ...
- 搭建nginx服务器,虚拟主机,反向代理
1 搭建Nginx服务器 1.1 问题 在IP地址为192.168.10. 5的主机上安装部署Nginx服务,并可以将Nginx服务器升级到更高版本,要求编译时启用如下功能: SSL加密功能 查看服务 ...
- Nginx的特性功能-反向代理、负载均衡、缓存、动静分离、平滑升级
反向代理 nginx配置文件 events { } 事件驱动 httpd { } 关于httpd相关的配置 server { } 定义虚拟主机 location { } ...
- nginx详解、反向代理、负载均衡和LNMP架构
资源池 nginx官方网站:http://nginx.org/ nginx官方文档:http://nginx.org/en/docs/ 本章资源: 点击这里 资源提取码:u2jv 1.nginx简介 ...
- (Nginx+Apache)实现反向代理与负载均衡
反向代理负载均衡 使用代理服务器可以将请求转发给内部的Web服务器,使用这种加速模式显然可以提升静态网页的访问速度.因此也可以考虑使用这种技术,让代理服务器将请求均匀转发给多台内部Web服务器之一上, ...
- nginx 一二事(3) - 反向代理以及负载均衡
先来说说正向代理 就是普通的代理,记得高中年代偷跑去网吧是要办卡的 题外话: 就是这货...相信很多80同龄人都有吧... 回到正题,那正向代理就不让你直接访问网络,而需要登录一下网吧的某个系统 ...
- Tomcat+Nginx+Redis+MySQL实现反向代理、负载均衡、session共享
一.环境准备 时间同步 关闭防火墙 联通网络,配置yum源 软件包链接:https://pan.baidu.com/s/1qYbtpnQ 二.安装nginx 1.解决依赖关系 [root@nginx- ...
- Nginx的使用(反向代理,负载均衡)
在我目前的工作内容中,接触到Nginx的用处无外乎两点: 1. 反向代理,解决前端跨域的问题 工作内容有门户的概念,就是将各个子系统集成到门户里,在门户里面访问,这样就很容易造成跨域的问题 那么解决的 ...
- Nginx安装部署(反向代理与负载均衡)
一.下载安装Nginx(本文环境为windows xp 32bit环境) 下载地址:http://files.cnblogs.com/likehua/nginx-1.0.11.zip 解压nginx- ...
随机推荐
- Django HttpResponse
HttpResponse 概述:给浏览器返回数据 HttpRequest对象是由django创建的,HttpResponse对象由程序员创建 用法 1:不调用模板,直接返回数据. 例: def get ...
- sql-lib闯关21-30
第二十一关 base64编码,单引号,报错型,cookie型注入. 本关和less-20相似,只是cookie的uname值经过base64编码了,下图为我们输入万能密码显示 uname = YWRt ...
- Oracle client客户端简易安装网上文档一
Oracle client客户端简易安装网上文档一-------------------------------------------------------------------------一. ...
- Go相关面试题目总结(日常更新)
1.go的深拷贝与浅拷贝 深拷贝 会赋值全部的内容 内容一样但是地址不一样 修改任何一个后地址不一样 内容也会一样 changeName(h1)对象传到函数里面也是深拷贝 b := a 这是深拷贝 会 ...
- k8s删除namespace一直处于terminating状态
k8s删除namespace一直处于terminating状态 当遇到删除ns是一直处于terminating情况可以用调k8s api进行删除. 1.创建api proxy. [root@node1 ...
- [WPF]是时候将WPF控件库从.Net Framework升级到.NET Core 3.1
1. 升级到Core的好处 去年中我曾考虑将我的控件库项目Kino.Toolkit.Wpf升级到.NET Core,不过很快放弃了,因为当时.NET Core是预览版,编译WPF还需要使用最新的Vis ...
- ANTLR随笔(二)
安装ANTLR 作者的电脑是MAC的操作系统macOS Catalina 10.15.2. 安装步骤后linux操作的系统的一样, Windows系统大致步骤一样,但是环境变量等配置有差别,作者很久没 ...
- NKOJ3751 扫雷游戏
问题描述 有一款有趣的手机游戏.棋盘上有n颗地雷,玩家需要至少扫掉其中的k颗雷.每一步,玩家可以用手指在手机屏幕上划一条直线,该直线经过的地雷都会被扫除掉.问,最少需要划几次就能扫除k颗以上的地雷? ...
- 用python写项目之图书管理系统
1.功能介绍: (1).添加新书:输入要添加的书名.存放的书架号.价格. (2).修改书架:输入要书名,然后对其修改书架号.价格 (3).删除书架:输入书名,然后对应删除书名.书架号.价格 (4).查 ...
- MySQL 解析 json 数组(mysql在5.7开始支持json解析)
1.函数 JSON_EXTRACT 表数据格式: 查询结果: sql 语句: -- ---------------------------- -- Table structure for json ...