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 容器彼此连接在一起,支持跨主机部署及自动 ...
随机推荐
- 十一,专著研读(CART算法)
十一,专著研读(CART算法) CART称为分类回归树,既能用于分类也能用于回归.使用二元切分方法处理连续型变量,给定特定值,如果特征值大于给定值就走左子树,否则走右子树. CART算法步骤 决策树生 ...
- lua 9 parttern 字符极其简要的介绍
摘自:https://www.lua.org/pil/20.2.html 所有的字符和含义包括: . all characters %a letters %c control characters % ...
- 【CSP-S 2019】D2T1 Emiya 家今天的饭
Description 传送门 Solution 算法1 32pts 爆搜,复杂度\(O((m+1)^n)\) 算法2 84pts 裸的dp,复杂度\(O(n^3m)\) 首先有一个显然的性质要知道: ...
- 201871010110-李华《面向对象程序设计(java)》第十七周学习总结
博文正文开头格式:(2分) 项目 内容 这个作业属于哪个课程 https://www.cnblogs.com/nwnu-daizh/ 这个作业的要求在哪里 https://www.cnblogs.co ...
- jQuery中的工具(十)
1. jQuery.each(object, [callback]), 通用遍历方法,可用于遍历对象和数组 不同于遍历 jQuery 对象的 $().each() 方法,此方法可用于遍历任何对象.回调 ...
- 《为什么说 Prometheus 是足以取代 Zabbix 的监控神器?》
为什么说 Prometheus 是足以取代 Zabbix 的监控神器? Kuberneteschina 致力于提供最权威的 Kubernetes 技术.案例与Meetup! 关注他 12 人赞同 ...
- CF731C Socks
CF731C Socks 洛谷评测传送门 题目描述 Arseniy is already grown-up and independent. His mother decided to leave h ...
- luoguP3292 [SCOI2016]幸运数字(倍增做法)
题意 线性基套上树上倍增即可,注意边界. code: #include<bits/stdc++.h> using namespace std; typedef long long ll; ...
- OpenCV Error: Unknown error code -10 (Raw image encoder error: Empty JPEG image (DNL not supported)) in throwOnEror 错误
出现上面这样的错误可以肯定是传了空指针导致的, 刚开始出现这样的问题, 并且是概率性的, 网上找了一遍都没找到解决方案, 然后自己一行一行代码注释, 发现还是会出现这样的问题, 当时就懵逼了, 我从打 ...
- CSP-S 2019 题解
D1T1-格雷码 题中给出了构造格雷码的方法. $solve(n,k)$表示求出$2^n$意义下排名为$k$的格雷码, 只要比较一下考虑最高位的0/1取值就好了. 部分分提示了要开$unsigned\ ...