linux (09) nginx反向代理,负载均衡
一.nginx域名分配
1.创建一个新的服务器
server
server{
listen 80;
server_name www.s15oumei.com; #定义访问域名
location / {
root /opt/myserver/oumei; #定义虚拟主机的网页根目录
index index.html; #定义虚拟主机的网页根目录下的文件
}
}
}
2.准备两个虚拟主机的网页根目录内容
[root@localhost myserver]# tree /opt/myserver/
/opt/myserver/
├── oumei
│ └── index.html 写入自己的内容
└── rihan
└── index.html 写入自己的内容
3.配置完成后需要检查配置是否正确
启动nginx目录文件 -t 判断
4..修改windows本地的测试域名 C:\Windows\System32\drivers\etc\hosts文件 写入如下内容
192.168.13.79 www.s15rihan.com
192.168.13.79 www.s15oumei.com
#因为我们没有www.s15oumei.com 也没有 www.s15rihan.com ,因此要在本地搞一个测试域名,
不想改dns的话,就去阿里云去买一个域名~~~~~~~~~~~~~~~~~~~~~~
5.配置完成后杀死进程,重启
pkill nginx
重启nginx文件
6.然后在浏览器测试访问 两个不同的 web站点
1.1nagix的访问日志功能
1.开启nginx.conf中的日志参数
在配置文件nginx.conf下,解开注释
log_format main '$remote_addr - $remote_user [$time_local] "$request" '
'$status $body_bytes_sent "$http_referer" '
'"$http_user_agent" "$http_x_forwarded_for"';
#开启访问日志功能的参数
access_log logs/access.log main;
2.检查access.log的日志信息,访问时会有访问记录
tail -f access.log
1.2nginx的拒绝访问功能
1.在nginx.conf中,添加参数
在server{}虚拟主机标签中,找到location 然后添加参数
#当访问 192.168.13.79/ 的时候
location / {
#拒绝参数是 deny
#deny 写你想拒绝的IP地址
#deny还支持拒绝一整个网站
deny 192.168.13.33;
root /opt/myserver/rihan;
index index.html;
}
1.3nginx的错误页面优化
1.修改nginx.conf 中的配置参数
这个s1540x.html存在 虚拟主机定义的网页根目录下,解开注释
error_page 404 /s40x.html;
s40x.html放在root 下面的根目录下,需自行创建文件
二.nginx反向代理
反向代理意味着在访问代理域名时会访问到要访问的页面,相当于一个媒介
1.实验环境准备
准备2个服务器,都安装好nginx软件
nginx1 192.168.13.79 作为web服务器 (理解为火车票售票点) nginx2 192.168.13.24 作为反向代理服务器 (黄牛) 用户 通过浏览器去访问 黄牛 (代理)
浏览器 访问 192.168.13.24 > 192.168.13.79
2.在反向代理服务器中添加配置
proxy_pass http://192.168.13.104;
server{
listen 80;
server_name 192.168.13.106; #自己的域名
location /{
# deny 192.168.125.*/;
proxy_pass http://192.168.125.129; #代理的域名
#root /opt/myserver/dapian;
#index index.html;
}
3.关闭进程,重启
4.访问代理域名
三.nginx负载均衡
集群的概念:一堆服务器做一件事
1.实验准备
准备三台计算机
nginx1 192.168.13.121 作为nginx负载均衡器 只要我访问这个负载均衡器,查看页面的结果,到底是来自于
nginx2 192.168.13.24 web服务,提供一个页面
nginx3 192.168.13.79 web服务,提供一个页面
2.先配置两个nginx web页面
192.168.13.24 准备一个 index.html 写入 你好,我是192.168.13.24机器
192.168.13.79 准备一个 index.html 写入 老了老弟,我是192.168.13.79
然后启动两个nginx web 服务
3.准备一个nginx负载均衡器 192.168.13.121机器上,修改nginx.conf 写入如下内容
定义一个负载均衡池,负载均衡的算法有 调度算法
概述
轮询 按时间顺序逐一分配到不同的后端服务器(默认)
weight 加权轮询,weight值越大,分配到的访问几率越高
ip_hash 每个请求按访问IP的hash结果分配,这样来自同一IP的固定访问一个后端服务器
url_hash 按照访问URL的hash结果来分配请求,是每个URL定向到同一个后端服务器
least_conn 最少链接数,那个机器链接数少就分发
1.轮询(不做配置,默认轮询)
2.weight权重(优先级)
3.ip_hash配置,根据客户端ip哈希分配,不能和weight一起用
3.写入负载解析虚拟机的代码
keepalive_timeout 65;
upstream node{ server 192.168.125.129 weight=5;
server 192.168.125.130 weight=6;
} #gzip on;
server{
listen 80;
server_name 192.168.125.131;
location /{
proxy_pass http://node;
# deny 192.168.125.*/;
# root /opt/myserver/dapian;
# index index.html; }
4.启动负载均衡器的 nginx服务
5.在客户端windows中测试访问,负载均衡器 192.168.13.121 ,查看请求分发的结果
linux (09) nginx反向代理,负载均衡的更多相关文章
- Linux 下 Nginx 反向代理 负载均衡配置
转载请注明出处:http://blog.csdn.net/smartbetter/article/details/52036350 上一篇分享了 Nginx + JDK + Tomcat + MySQ ...
- linux篇—Nginx反向代理负载均衡
一.环境准备 反向代理功能架构 3台web服务器,组建出web服务器集群 web01 10.0.0.7 172.16.1.7 web02 10.0.0.8 172.16.1.8 web03 10.0. ...
- Linux下nginx反向代理负载均衡几种方式以及配置
下面以ip地址192.168.1.1 和192.168.1.2举例 1.轮询 (1).轮询:每个请求按时间顺序逐一分配到不同的后端服务器,如果后端服务器down掉,能自动剔除. upstream ...
- Nginx 反向代理 负载均衡 虚拟主机配置
Nginx 反向代理 负载均衡 虚拟主机配置 通过本章你将学会利用Nginx配置多台虚拟主机,清楚代理服务器的作用,区分正向代理和反向代理的区别,搭建使用Nginx反向搭理和负载均衡,了解Nginx常 ...
- Nginx 反向代理 负载均衡 虚拟主机
Nginx 反向代理 负载均衡 虚拟主机配置 通过本章你将学会利用Nginx配置多台虚拟主机,清楚代理服务器的作用,区分正向代理和反向代理的区别,搭建使用Nginx反向搭理和负载均衡,了解Nginx常 ...
- 十.nginx反向代理负载均衡服务实践部署
期中集群架构-第十章-nginx反向代理负载均衡章节章节====================================================================== 0 ...
- 【转】Nginx 反向代理 负载均衡 虚拟主机配置
原文:http://www.cnblogs.com/itdragon/p/8059000.html Nginx 反向代理 负载均衡 虚拟主机配置 通过本章你将学会利用Nginx配置多台虚拟主机,清楚代 ...
- Centos7.4 Nginx反向代理+负载均衡配置
Ningx是一款高性能的HTTP和反向代理服务器,配置起来也比较简单. 测试环境: 172.16.65.190 Nginx-反向代理 172.16.65.191 Ningx-Web 172.16.65 ...
- 如何使用Weave以及Docker搭建Nginx反向代理/负载均衡服务器
Hi, 今天我们将会学习如何使用 Weave 和 Docker 搭建 Nginx 的反向代理/负载均衡服务器.Weave 可以创建一个虚拟网络将 Docker 容器彼此连接在一起,支持跨主机部署及自动 ...
随机推荐
- centos7下关闭防火墙
查看防火墙:systemctl status firewalld.service 关闭防火墙:systemctl stop firewalld.service 以上方式是暂时的,重启系统则防火墙仍然开 ...
- 密标与pdf有什么关系
密标与pdf有什么关系 密标与pdf有什么关系 密标与pdf有什么关系
- httpd虚拟主机起不来!!
前几天在公司,练习负载均衡配置.在配置虚拟主机的web服务(apache) ,创建好虚拟主机的配置文件 ss -tnl 查看监控端口80已起来,通过本地浏览器访问一直显示默认的欢迎页... 一个下午 ...
- session.invalidate() 退出登录
当浏览器第一次请求时,服务器创建一个session对象,同时生成一个sessionId,并在此次响应中将sessionId 以响应报文的方式传回客户端浏览器内存或以重写url方式送回客户端,来保持整个 ...
- Java HashMap用法
为了做题用Java语法替代C++map的常用语法,记录一下,剖析原理以后再补上. 1.import java.util.HashMap;//导入; 2.HashMap<K, V> map= ...
- 【java】svn显示×
背景:将客服系统代码赋值到商户子系统中,复制过去后,所有代码svn显示×. 可能:代码直接复制过去只是表面上再maven中显示的代码复制过去,不是真的代码,所以对于svn来讲真的代码删了,又来了一堆新 ...
- Potyczki Algorythmiczne 2019
Runda próbna: A + B 设$f[i]$表示两数相加得到前$i$位的方案数,由$f[i-1]$和$f[i-2]$转移得到. #include<cstdio> #include ...
- C++ 数组遍历的两种方式
C++ 数组遍历的两种方式: #include <iostream> using namespace std; int main() { // 一维数组 ] = {, , , , }; / ...
- windows上安装python2和python3虚拟环境
一.windows上安装 1.安装python 分别安装了Python2和Python3 python3.7默认安装目录 C:\Users\Administrator\AppData\Local\Pr ...
- multer 基础教程(中文版)
此文档于2016年10月3日翻译时multer的版本是1.2.0,它可能不是最新的! 甚至可能存在翻译错误!你可能需要阅读原版英语README 此文档仅供参考! Multer Multer 是一个 n ...