【问题标题】:haproxy redirect scheme https if !$request_urihaproxy 重定向方案 https if !$request_uri
【发布时间】:2014-12-08 07:23:59
【问题描述】:

如果可以在某些 url 上禁用 https,我试试这个,但它不起作用。 我需要一个没有 https 和重定向的网站

frontend  http
    bind *:80
    mode http
    acl folder path_beg -i ^/somefolder/subfolder/.* ^/somefolder/subfolder2/.*
    redirect scheme https if !folder
    option http-server-close
    reqadd X-Forwarded-Proto:\ http
    option forwardfor header X-Real-IP
    default_backend nodes
frontend https
    bind *:443
    mode http
    option http-server-close
    reqadd X-Forwarded-Proto:\ https
    option forwardfor header X-Real-IP
    default_backend nodes
backend nodes
    balance leastconn
    server server1 10.10.10.7:80 cookie A check
    server server2 10.10.10.8:80 cookie A check

【问题讨论】:

    标签: redirect haproxy


    【解决方案1】:

    访问列表

    acl folder path_dir -i /somefolder/subfolder/ /somefolder/subfolder2/
    

    在后端你需要规则

    redirect scheme https if !folder !{ ssl_fc }
    

    之后 - 所有网站都重定向到 htts,但如果 uri 包含 /somefolder/subfolder/ 或 /somefolder/subfolder2/ 它可以通过 http 连接。

    在 nginx 中,如果你想将 https 重定向到 http,你需要添加一些规则

    if ( $http_x_forwarded_proto = "https" ) {
    rewrite ^/somefolder/subfolder2/ http://domain//somefolder/subfolder2/ permanent;
    }
    

    【讨论】:

      猜你喜欢
      • 2012-10-25
      • 2017-10-01
      • 2016-12-07
      • 1970-01-01
      • 2017-07-30
      • 1970-01-01
      • 2021-08-04
      • 2020-09-24
      • 1970-01-01
      相关资源
      最近更新 更多