什么代理?

代理他人工作

什么是正向代理和反向向代理,他们之间的区别?

这两个代理很类似,但扮演了两个不同角色,一个站在用户角度,一个站在服务端角度

正向代理: 帮助用户请求服务

返向代理:帮助服务均衡用户的请求

Nginx反向代理使用

Nginx支持L7,1.9以上版本支持L4

# L7 L4 相当于网络7层模型,L7表示应用层, L4表示传输层

依赖模块:

ngx_http_proxy_module

     # proxy代理模块,用于把请求抛给服务器节点或upstream服务池

    ngx_http_upstream_module

  # 负载均衡模块,可以实现网站的负载均衡功能和节点的健康检查

Nginx反向代理配置:

# 中小企业大量使用

  1. 反向代理环境安装

    和Nginx环境安装一样 linux_nginx环境安装

  2. 更改配置文件

    其配置文件位置: /application/nginx/conf/nginx.conf

# 其配置添加在 http 模块中

upstream www_server_pools {
# 反向代理upstream声明,后面是名字,用在location中表示跳转到反向代理服务器
server 10.0.0.8:80 weight=1;
server 10.0.0.9:80 weight=1;
# weiht表示权重,越大获得的请求越多,这个ip地址是web服务的地址
# weight一样,雨露均沾,也就是说可以从这里,指向更改了端口号的web服务器
# 雨露均沾就会有个问题,客户登录认证时候,在不同的web服务中跳转,重复认证问题,可以添加 ip_hash; 这个解决一个用户连接,只能固定使用同一个web服务器提供服务
} # 主配置文件中server绑定域名
server {
listen 80;
server_name www.yunhello.cn; # 代理服务器绑定域名
location / {
proxy_pass http://www_server_pools; # 跳转到反向代理
     proxy_set_header Host $host;       # 传递请求头
     proxy_set_header X-Forwarded-For $remote_addr;    # 传递客户端源地址
}
} # 这样的话,用户通过域名访问web服务,首先是到负载均衡服务,然后负载均衡代替用户向web服务请求,对用户来说,和直接访问web服务没有区别 # 可是这样的访问,无法获取用户的请求头信息和来源ip信息
# 在location中添加下面这两行
# proxy_set_header Host $host; # 传递用户的请求头 # proxy_set_header X-Forwarded-For $remote_addr; # 传递用户访问ip地址 # 在web服务中,需要激活access_log 默认格式配置 $http_x_forwarded_for字段显示用户源ip,然后再每个站点的server中指定各个站点单独的access.log 中应用主配置文件中main格式

如何实现Nginx服务的高可用?

主Nginx负载均衡器宕机了,备负载均衡顶替上去

    1. 安装keepalived模块

yum install keepalived -y 

    2. 配置文件为 /etc/keepalived/keepalived.conf

# keeplived不仅仅是ip的管理,还有资源的管理,ivs管理,需要把除了ip管理其他的都干掉,其他功能并不需要,更改为以下内容,多余全部删掉

! Configuration File for keepalived

global_defs {
notification_email {
qq@qq.com # 个人邮箱,一般不用,使用监控软件实现监控
}
notification_email_from qq@qq.com # 邮箱
smtp_server 192.168.200.1
smtp_connect_timeout 30
router_id LVS_DEVEL # 备需要更改一下,不能一样
} vrrp_instance VI_1 {
state MASTER # 主,备需要改为 BACKUP
interface eth0 # 通信网卡,默认绑定辅助ip的网卡
virtual_router_id 51 # 实例id,用这个来区分主主备是不是一个实例
priority 150 # 优先级,数字越大优先级越高
advert_int 1 # 心跳间隔
authentication {
auth_type PASS # 两台负载均衡之间通信密码
auth_pass 1111
} virtual_ipaddress { 10.0.0.3 # 辅助ip地址一样,当主挂了,备就使用这个辅助ip } } # 然后用户请求,将会直接到达这个辅助ip,然后通过这个辅助ip访问代理,实现web访问

  

linux_nginx反向代理的更多相关文章

  1. nginx配置反向代理或跳转出现400问题处理记录

    午休完上班后,同事说测试站点访问接口出现400 Bad Request  Request Header Or Cookie Too Large提示,心想还好是测试服务器出现问题,影响不大,不过也赶紧上 ...

  2. 使用python自动生成docker nginx反向代理配置

    由于在测试环境上用docker部署了多个应用,而且他们的端口有的相同,有的又不相同,数量也比较多,在使用jenkins发版本的时候,不好配置,于是想要写一个脚本,能在docker 容器创建.停止的时候 ...

  3. Windos环境用Nginx配置反向代理和负载均衡

    Windos环境用Nginx配置反向代理和负载均衡 引言:在前后端分离架构下,难免会遇到跨域问题.目前的解决方案大致有JSONP,反向代理,CORS这三种方式.JSONP兼容性良好,最大的缺点是只支持 ...

  4. Nginx反向代理,负载均衡,redis session共享,keepalived高可用

    相关知识自行搜索,直接上干货... 使用的资源: nginx主服务器一台,nginx备服务器一台,使用keepalived进行宕机切换. tomcat服务器两台,由nginx进行反向代理和负载均衡,此 ...

  5. 使用Nginx反向代理 让IIS和Tomcat等多个站点一起飞

    使用Nginx 让IIS和Tomcat等多个站点一起飞 前言: 养成一个好习惯,解决一个什么问题之后就记下来,毕竟“好记性不如烂笔头”. 这样也能帮助更多的人 不是吗? 最近闲着没事儿瞎搞,自己在写一 ...

  6. 使用nginx反向代理,一个80端口下,配置多个微信项目

    我们要接入微信公众号平台开发,需要填写服务器配置,然后依据接口文档才能实现业务逻辑.但是微信公众号接口只支持80接口(80端口).我们因业务需求需要在一个公众号域名下面,发布两个需要微信授权的项目,怎 ...

  7. 腾讯云下安装 nodejs + 实现 Nginx 反向代理

    本文将介绍如何给腾讯云上的 Ubuntu Server 12.04 LTS 64位主机安装 node 及 nginx,并简单配置反向代理. 笔者在整个安装过程中遇到不少麻烦(不赘述),如果你希望少踩坑 ...

  8. 简易nginx TCP反向代理设置

    nginx从1.9.0开始支持TCP反向代理,之前只支持HTTP.这是我的系统示意图: 为何需要? 为什么需要反向代理?主要是: 负载均衡 方便管控 比如我现在要更新后端服务器,如果不用负载均衡的话, ...

  9. 反向代理与 Real-IP 和 X-Forwarded-For

    开篇语:开涛新作<亿级流量网站架构核心技术>出版计划公布以来,博文视点遭受到一波又一波读者询问面世时间的DDos攻击.面对亿级流量的热情,感激之余,我们也很庆幸——这部作品质量的确过硬,不 ...

随机推荐

  1. 在Ubuntu14.04上搭建自己的OpenVPN服务器并通过它上网

    背景 学校宿舍端口可以配置静态IP连校内网,也可以连到实验室的服务器:实验室的服务器可以连外网:但宿舍要连外网就要花钱买PPPoE账号了.作为壮哉我大计院的一员,本着发扬专(neng)业(sheng) ...

  2. 【分块】BZOJ2821 作诗(Poetize)

    2821: 作诗(Poetize) Time Limit: 50 Sec  Memory Limit: 128 MBSubmit: 3265  Solved: 951[Submit][Status][ ...

  3. [转]Linux里的2>&1究竟是什么

    我们在Linux下经常会碰到nohup command>/dev/null 2>&1 &这样形式的命令. 首先我们把这条命令大概分解下首先就是一个nohup表示当前用户和系 ...

  4. 菜鸟VUER学习记——零0章、打开新的大门

    是什么 基于MVVM模型,核心库只关注视图层,通过尽可能简单的 API 实现响应的数据绑定和组合的视图组件的js框架.根据项目的复杂度和需求,渐进的加入插件以达到恰到好处的程度. 解决问题 UI组件化 ...

  5. HDU 2689 Sort it【树状数组】

    Sort it Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total Sub ...

  6. HDU1312-Red and Black-DFS

    Red and Black Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)Tot ...

  7. A. Duff and Meat

    A. Duff and Meat time limit per test 1 second memory limit per test 256 megabytes input standard inp ...

  8. JAVA虚拟机之对象探秘

    上一章主要写到了JVM中运行时数据区域各个部分的功能及其作用.上一章说到了对象是分配在堆上面的,所以接下来我们写到对象在堆内存中是如何创建.如何布局.如何访问.1. 对象的创建 在java程序中对象的 ...

  9. ThinkPHP 下载、导入、导出功能的设计与实现

    下载: 1.引入命名空间: use Org\Net\Http; 2.在入口文件中设置根目录: //定义根目录的绝对地址 define('ROOT',str_replace("\\" ...

  10. echarts图表里label文字过长换行的方法

    在做一些图标时,有时会出现显示文字过长的问题,需要将其按照指定的字数换行,像下图这样 而echarts没有提供换行的方法,但是可以使用fomatter方法进行设置,代码如下 formatter: fu ...