当前位置: 首页 > news >正文

河南省内 在哪个网站做商检表交易链接

河南省内 在哪个网站做商检表,交易链接,观止网站建设,织梦同时运行多个网站目录 1. 引言2. HTTP server的配置3. Stream server的配置3.1 作为proxy_protocol的前端服务器3.2 作为proxy_protocol的后端服务器1. 引言 proxy_protocol 是haproxy开发的一种用于在代理服务器和后端服务器之间传递客户端连接信息的协议。使用 proxy_protocol 的主要优势是能…

目录

  • 1. 引言
  • 2. HTTP server的配置
  • 3. Stream server的配置
    • 3.1 作为proxy_protocol的前端服务器
    • 3.2 作为proxy_protocol的后端服务器

1. 引言

  proxy_protocol 是haproxy开发的一种用于在代理服务器和后端服务器之间传递客户端连接信息的协议。使用 proxy_protocol 的主要优势是能够准确地获取客户端的真实 IP 地址,而不受代理服务器的影响。这对于需要根据客户端 IP 地址进行访问控制、日志记录等操作的应用程序非常有用。目前有v1和v2两个版本。详细文件可以参见:https://www.haproxy.org/download/1.8/doc/proxy-protocol.txt

  proxy_protocol协议在一些主流的服务器上面得到了广泛的应用,如tomcat、mariadb、apache、HAPROXY等等。本文要介绍如何在nginx中开启对proxy_protocol的支持。

  nginx对于proxy_protocol协议的支持在HTTP服务和Stream代理服务上面是不一样的。对于前者它只能作为后端服务,支持利用proxy_protocol协议来获取客户端的IP。而对于stream代理,它则是作为前端来发起proxy_protocol的握手的。

2. HTTP server的配置

  对于http协议下的典型架构如下图:

在这里插入图片描述

  其中负载均衡服务器负责封装proxy_protocol报文传递客户端的信息,nginx服务器负责解析proxy_protocol的协议信息来获取客户端的信息,而应用服务器可以有或者没有,对于静态内容可能就只要nginx提供服务就可以了,而动态内容则需要应用服务器来负责。

  下面是给nginx的HTTP服务开启proxy_protocol功能支持的配置,如下:

http {log_format combined '$proxy_protocol_addr - $remote_user [$time_local] ''"$request" $status $body_bytes_sent ''"$http_referer" "$http_user_agent"';#...server {server_name localhost;listen 80   proxy_protocol;listen 443  ssl proxy_protocol;ssl_certificate      /etc/nginx/ssl/public.example.com.pem;ssl_certificate_key  /etc/nginx/ssl/public.example.com.key;location /app/ {proxy_pass       http://backend1;proxy_set_header Host            $host;proxy_set_header X-Real-IP       $proxy_protocol_addr;proxy_set_header X-Forwarded-For $proxy_protocol_addr;}}
}

  其中两个listen语句中均添加了"proxy_protocol"的属性,表示对于监听的端口,在新建连接的时候会进行proxy_protocol协议的握手处理。
  对于下面这两行配置:

	proxy_set_header X-Real-IP       $proxy_protocol_addr;proxy_set_header X-Forwarded-For $proxy_protocol_addr;

  则用于告诉nginx在发起向后端应用服务器发起请求的时候,会在HTTP请求头中添加X-Real-IP和X-Forwarded-For两个请求头,并都设置其为通过解析Proxy protocol协议头中得到的客户端的真实地址“$proxy_protocol_addr"。

  最后,对于访问日志,也会记录客户端的真实IP地址,如下:

    log_format combined '$proxy_protocol_addr - $remote_user [$time_local] ''"$request" $status $body_bytes_sent ''"$http_referer" "$http_user_agent"';

  在访问日志的格式模板里面也设置了$proxy_protocol_addr 变量用来获取客户端的真实IP。

  至此,nginx就能够在收到http请求的时候首先进行proxy_protocol的握手。当然,在开启proxy_protocol协议支持的时候,请确保nginx的前端也同样配置了proxy_protocol协议,否则nginx会无法正好工作。
  这可以通过下面nginx源码得到证明:

http://www.mmbaike.com/news/87464.html

相关文章:

  • wordpress如何导航网站谷歌浏览器中文手机版
  • 网页设计与网站开发基础教程无锡营销型网站建站
  • ui设计包括哪些场景优化营商环境工作开展情况汇报
  • wordpress小工具 样式搜索引擎排名优化建议
  • 网站怎么做防劫持如何自己做引流推广
  • 莱芜营销型网站制作软件开发公司联系方式
  • wordpress 登录入口绍兴seo外包
  • 网站开发面试都会问什么问题优化神马排名软件
  • 兰州app开发郑州seo外包顾问
  • 以.cn结尾的个人网站域名花钱吗网络推广主要做什么
  • 莱芜金点子最新招工招聘启事培训机构seo
  • b2c商城网站营销方案个人模板建站
  • 网页设计是用什么软件郑州seo排名工具
  • 深圳网站建设怎么办代做百度收录排名
  • 如何查看网站做没做百度推广搜索引擎平台有哪些
  • 苏州建设造价信息网站沈阳seo技术
  • cm域名网站互联网营销师考试内容
  • 中国排名第一的游戏公司seo
  • 做网站页面如何在百度发布文章
  • 百度推广移动端网站查询网址域名
  • 哪里有做网站优化的公司百度搜索引擎优化的养成良好心态
  • 如何的找网站建设公司爱站网关键词长尾挖掘
  • 广州家具网站建设杭州seo平台
  • 企业做网站的合同公司网站设计的内容有哪些
  • thinkphp相比Wordpress海淀区seo搜索优化
  • 哪些网站可以做旅游关键词优化的最佳方法
  • 北仑网站建设wordpress
  • 修仙网页游戏大全seo黑帽教程视频
  • 网站续费怎么做帐关键词密度
  • 河南省建筑市场一体化平台宁德seo培训