5

いくつかの問題が発生しています。ACL を tcp モードで動作させることができないよう
です。すべてが http モードで動作します。
ここに私の設定があります。

frontend  http *:80
    acl http_test_acl       path_beg    -i /test
    use_backend http_test   if http_test_acl
    default_backend         http_default

backend http_test
    balance   roundrobin
    server    httptest 10.10.10.10:80 check

backend http_default
    balance   roundrobin
    server    httpdefault 10.10.10.10:80 check

############# HTTPS #################
frontend  https *:443
    mode tcp
    acl https_test_acl         path_beg -i /test
    use_backend https_test     if https_test_acl
    default_backend            https_default

backend https_test
    mode tcp
    balance   roundrobin
    server    httpstest 10.10.10.10:443 check

backend https_default
    mode tcp
    balance   roundrobin
    server    httpsdefault 10.10.10.10:443 check

元の IP を隠しているので、IP 10.10.10.10 には注意を払わないでください。https が機能しない理由を教えてください。http フロントエンド/バックエンド ACL ルールは正常に機能しています。

乾杯

4

2 に答える 2

11

https サーバーが (ssl の場合と同様に) tcp モードになっているため、レイヤー 7 ルールは機能しません。

于 2010-11-17T06:31:28.593 に答える
1

acl を機能させるには、tcp モードを無効にしてから、バックエンドのサーバーで ssl をセットアップします (したがって、ssl キーワードが必要です)。

frontend  https *:443
    acl https_test_acl      path_beg    -i /test
    use_backend     https_test  if https_test_acl
    default_backend             https_default

backend https_test
    balance   roundrobin
    server    httpstest 10.10.10.10:443 ssl check

backend https_default
    balance     roundrobin
    server  httpsdefault 10.10.10.10:443 ssl check

または、両方のバックエンド サーバーで ssl をセットアップする必要はありません。バックエンド サーバーでプライベート IPS を使用し、バックエンド サーバーのポートが外部に公開されないようにする

    backend https_test
    balance   roundrobin
    server    httpstest some_private_ip:8000 check
于 2015-10-23T11:08:15.523 に答える