免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
楼主: Godbach
打印 上一主题 下一主题

【负载均衡大讨论,参与有礼】TCP/HTTP 负载均衡利器-- HAProxy [复制链接]

论坛徽章:
36
IT运维版块每日发帖之星
日期:2016-04-10 06:20:00IT运维版块每日发帖之星
日期:2016-04-16 06:20:0015-16赛季CBA联赛之广东
日期:2016-04-16 19:59:32IT运维版块每日发帖之星
日期:2016-04-18 06:20:00IT运维版块每日发帖之星
日期:2016-04-19 06:20:00每日论坛发贴之星
日期:2016-04-19 06:20:00IT运维版块每日发帖之星
日期:2016-04-25 06:20:00IT运维版块每日发帖之星
日期:2016-05-06 06:20:00IT运维版块每日发帖之星
日期:2016-05-08 06:20:00IT运维版块每日发帖之星
日期:2016-05-13 06:20:00IT运维版块每日发帖之星
日期:2016-05-28 06:20:00每日论坛发贴之星
日期:2016-05-28 06:20:00
141 [报告]
发表于 2016-04-21 10:51 |只看该作者
回复 139# lnwu

2. 使用 HAProxy 中遇到了哪些问题,以及最终如何解决
    碰到的问题是URL中含有中文情况下,使用IE打开有问题,当时是一个oa系统,里面的上传的文档大都是中文名的,从haproxy 1.4.17版本升级后就发现IE怎么都不能下载文档了,使用chrome、Firefox却正常,
后来问了谷哥才知道是编码问题。不过haproxy的新版一直没有解决问题,只好再用回HAProxy 1.4.17版本。现在都不敢使用其他版本了。
    早两天还测试了HAProxy1.6.4版,发现问题依旧。


HAProxy 有一个配置项,是可以支持 URL 含中文(更通用一点说,是非 ASCII 吗)的问题:

  option accept-invalid-http-request

我之前处理过一次 URL 中含有葡萄牙语的问题


   

论坛徽章:
36
IT运维版块每日发帖之星
日期:2016-04-10 06:20:00IT运维版块每日发帖之星
日期:2016-04-16 06:20:0015-16赛季CBA联赛之广东
日期:2016-04-16 19:59:32IT运维版块每日发帖之星
日期:2016-04-18 06:20:00IT运维版块每日发帖之星
日期:2016-04-19 06:20:00每日论坛发贴之星
日期:2016-04-19 06:20:00IT运维版块每日发帖之星
日期:2016-04-25 06:20:00IT运维版块每日发帖之星
日期:2016-05-06 06:20:00IT运维版块每日发帖之星
日期:2016-05-08 06:20:00IT运维版块每日发帖之星
日期:2016-05-13 06:20:00IT运维版块每日发帖之星
日期:2016-05-28 06:20:00每日论坛发贴之星
日期:2016-05-28 06:20:00
142 [报告]
发表于 2016-04-21 10:55 |只看该作者
回复 139# lnwu

   碰到的问题是URL中含有中文情况下,使用IE打开有问题,当时是一个oa系统,里面的上传的文档大都是中文名的,从haproxy 1.4.17版本升级后就发现IE怎么都不能下载文档了,使用chrome、Firefox却正常,


这个问题一方面就是 IE 比较  low。好像是 URL 中含有本地语言的话,URL 的编码他就是用本地系统语言来编码 URL。而 Chrome 之类的好像会转成 UTF8。

HAProxy 缺省情况下仅支持标准的 URL,显然不能包含非 ASCII 码。但是 HAproxy 同时提供了一个选项 option accept-invalid-http-request,让 HAProxy 可以让一些本来是非法的 request,当做正常的处理。

你需要的应该是开启这个选项。

   

论坛徽章:
0
143 [报告]
发表于 2016-04-22 12:07 |只看该作者
Godbach 发表于 2016-04-21 10:55
回复 139# lnwu

HAProxy 缺省情况下仅支持标准的 URL,显然不能包含非 ASCII 码。但是 HAproxy 同时提供了一个选项 option accept-invalid-http-request,让 HAProxy 可以让一些本来是非法的 request,当做正常的处理。

你需要的应该是开启这个选项。

昨天在HAProxy 1.6.4下面试着开启option accept-invalid-http-request选项,确实可以解决IE非US-ASCII编码的头名会被过滤掉的问题。
谢谢啦。

论坛徽章:
36
IT运维版块每日发帖之星
日期:2016-04-10 06:20:00IT运维版块每日发帖之星
日期:2016-04-16 06:20:0015-16赛季CBA联赛之广东
日期:2016-04-16 19:59:32IT运维版块每日发帖之星
日期:2016-04-18 06:20:00IT运维版块每日发帖之星
日期:2016-04-19 06:20:00每日论坛发贴之星
日期:2016-04-19 06:20:00IT运维版块每日发帖之星
日期:2016-04-25 06:20:00IT运维版块每日发帖之星
日期:2016-05-06 06:20:00IT运维版块每日发帖之星
日期:2016-05-08 06:20:00IT运维版块每日发帖之星
日期:2016-05-13 06:20:00IT运维版块每日发帖之星
日期:2016-05-28 06:20:00每日论坛发贴之星
日期:2016-05-28 06:20:00
144 [报告]
发表于 2016-04-22 13:26 |只看该作者
回复 142# lnwu

  嗯,我一看你描述的问题,觉得应该就是这个原因。

   

论坛徽章:
0
145 [报告]
发表于 2016-04-22 22:18 |只看该作者
回复 143# Godbach


    厉害

论坛徽章:
36
IT运维版块每日发帖之星
日期:2016-04-10 06:20:00IT运维版块每日发帖之星
日期:2016-04-16 06:20:0015-16赛季CBA联赛之广东
日期:2016-04-16 19:59:32IT运维版块每日发帖之星
日期:2016-04-18 06:20:00IT运维版块每日发帖之星
日期:2016-04-19 06:20:00每日论坛发贴之星
日期:2016-04-19 06:20:00IT运维版块每日发帖之星
日期:2016-04-25 06:20:00IT运维版块每日发帖之星
日期:2016-05-06 06:20:00IT运维版块每日发帖之星
日期:2016-05-08 06:20:00IT运维版块每日发帖之星
日期:2016-05-13 06:20:00IT运维版块每日发帖之星
日期:2016-05-28 06:20:00每日论坛发贴之星
日期:2016-05-28 06:20:00
146 [报告]
发表于 2016-04-22 23:08 |只看该作者
回复 144# 撒加

这就是经验。经历过就知道。


   

论坛徽章:
0
147 [报告]
发表于 2016-04-28 16:30 |只看该作者
讨论HAProxy的人少呀

论坛徽章:
36
IT运维版块每日发帖之星
日期:2016-04-10 06:20:00IT运维版块每日发帖之星
日期:2016-04-16 06:20:0015-16赛季CBA联赛之广东
日期:2016-04-16 19:59:32IT运维版块每日发帖之星
日期:2016-04-18 06:20:00IT运维版块每日发帖之星
日期:2016-04-19 06:20:00每日论坛发贴之星
日期:2016-04-19 06:20:00IT运维版块每日发帖之星
日期:2016-04-25 06:20:00IT运维版块每日发帖之星
日期:2016-05-06 06:20:00IT运维版块每日发帖之星
日期:2016-05-08 06:20:00IT运维版块每日发帖之星
日期:2016-05-13 06:20:00IT运维版块每日发帖之星
日期:2016-05-28 06:20:00每日论坛发贴之星
日期:2016-05-28 06:20:00
148 [报告]
发表于 2016-04-28 21:38 |只看该作者
回复 146# 撒加

是的。相对 Nginx 来说,还是小众一些。

BTW,翻译的事儿,再等等。最近工作事情多。


   

论坛徽章:
0
149 [报告]
发表于 2016-05-03 16:56 |只看该作者
回复 147# Godbach


    OK,顺便51后快乐,哈哈

论坛徽章:
0
150 [报告]
发表于 2016-05-05 18:55 |只看该作者
本帖最后由 lnwu 于 2016-05-05 19:10 编辑

回复 143# Godbach



我要在HAProxy下申请letsencrypt证书。
安装了acme和HAProxy ACME domain validation plugin
按照HAProxy ACME domain validation plugin的说明配置HAProxy.cfg申请单个域名证书可以成功。
但我需要配置多域名证书,申请就怎么都不成功了
我的HAProxy.cfg配置如下:
global
    user haproxy
    group haproxy
    daemon
    log /dev/log    local0
    log /dev/log    local1 info
    chroot /var/lib/haproxy
    crt-base /etc/letsencrypt/live                  
    lua-load /etc/haproxy/acme-http01-webroot.lua   

defaults
    log     global
    mode    http
    option  httplog
    timeout connect 5000
    timeout client  50000
    timeout server  50000
frontend http
    bind *:80
    mode tcp
    acl url_acme_a path_beg a.domain.com/.well-known/acme-challenge/
    acl url_acme_b path_beg b.domain.com/.well-known/acme-challenge/
    http-request use-service lua.acme-http01 if METH_GET url_acme_a
    http-request use-service lua.acme-http01 if METH_GET url_acme_b
   use_backend a if  url_acme_a
   use_backend b if  url_acme_b
   default_backend a
frontend https
    bind *:443 ssl crt domain/h2.pem
    mode tcp

  acl www_a req_ssl_sni -i a.domain.com
  acl www_b req_ssl_sni -i b.domain.com

  use_backend a if www_a
  use_backend b if www_b
  default_backend a
backend a
     mode tcp
   server a 192.168.100.22:80 check
backend b
      mode tcp
   server b 192.168.100.22:80 check


申请证书时提示错误:
error:Could not connect to a.domain.com/.well-known/acme-challenge/hvb1k4CbcL_xcHYASzXnJIEq2L1rkEHdg-ocdllx2Ts
                                      这个域名前面有http://

请问这个要怎么解决呢?
   
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP