web-dev-qa-db-ja.com

HAProxy-複数のポートでリッスンするようにHTTPフロントエンドを構成する

私は次のように私のHAProxy設定にHAProxy HTTPフロントエンドを持っています:

frontend myaddress.net :10098
  bind :80,:8080
  mode http
  log global
  option http-server-close
  timeout client 14400000
  timeout connect 60000
  timeout tunnel 14400000
  timeout http-request 14400000
  capture request header User-Agent len 64
  capture request header Accept-language len 64
  capture request header x-forward len 15
  capture request header Host len 64
  capture request header X-Orig-Base len 64
  capture request header X-Orig-Host len 64
  capture request header X-Orig-Proto len 64

  reqadd X-Original-Host:\ myaddress.net

  acl is-ssl hdr(X-Orig-Proto) https
  acl is-http hdr(X-Orig-Proto) http

  redirect code 301 prefix https://myaddress.net if is-http

  default_backend BACKEND_myaddress.net:catchall

次のように定義されたバックエンドを指します。

backend BACKEND_myaddress.net:catchall
  timeout server 4h
  balance leastconn
  server myserver myserver:8080 check inter 5s rise 3 fall 1

ポート80でリッスンしてからバックエンドサーバーで8080に転送するように機能していますが、今はフロントエンドのポート8080でもリッスンするようにしています(理由はわからないが、これは不十分な要件です)。 )。

ご覧のとおり、bind :80,:8080。フロントエンドもポート8080でリッスンするだろうと思っていましたが、ポート8080でリッスンしていないようです。

この構成に欠けているものはありますか?フロントエンドをポート8080と80でリッスンさせ、ポート8080でバックエンドサーバーに転送するにはどうすればよいですか?

12
dsw88

あなたのフロントエンドセクションでこれを試してください:

bind :80
bind :8080
27
Gooner
bind 0.0.0.0:80
bind 0.0.0.0:8080

私のために働く!

3
Karthik