以下のように同一IP同一ポートでの接続をドメイン名で切り替える設定を行いたいと思います。
※Webサーバ1をフロントサーバにして・・・と最初考えたのですがApacheが80番ポートを
 使用しており、HAProxyと競合してしまったので、別途フロントサーバ(リバースプロキシサーバ)を立てました。
※PoundはAlmaLinuxでうまくインストールできませんでした。。。
※フロントサーバはAlmaLinux9です。。


AlmaLinux9をインストールしdnf -y update等を行いサーバを作成します。
※ファイアーウォールが有効な場合は80番ポートを開放する必要があります。

以下のコマンドを実行しHAProxyをインストールします。

dnf -y install haproxy

以下のコマンドを実行し設定ファイルを開きます。(viの使い方は省略します)

vi /etc/haproxy/haproxy.cfg

デフォルトで入っているfrontend~とbackend~で始まる箇所を全部#でコメントアウトします。

#---------------------------------------------------------------------
# main frontend which proxys to the backends
#---------------------------------------------------------------------
#frontend main
#    bind *:5000
#    acl url_static       path_beg       -i /static /images /javascript /stylesheets
#    acl url_static       path_end       -i .jpg .gif .png .css .js
#
#    use_backend static          if url_static
#    default_backend             app
#
#---------------------------------------------------------------------
# static backend for serving up images, stylesheets and such
#---------------------------------------------------------------------
#backend static
#    balance     roundrobin
#    server      static 127.0.0.1:4331 check
#
#---------------------------------------------------------------------
# round robin balancing between the various backends
#---------------------------------------------------------------------
#backend app
#    balance     roundrobin
#    server  app1 127.0.0.1:5001 check
#    server  app2 127.0.0.1:5002 check
#    server  app3 127.0.0.1:5003 check
#    server  app4 127.0.0.1:5004 check

一番下に以下の内容で追記し、ファイルを保存します。

frontend web_proxy
    default_backend web_servers
    use_backend web2_servers if { query -m str <Webサーバ2のドメイン> }
    bind *:80

backend web_servers
    server web01 <Webサーバ1のローカルIPアドレス>:80

backend web2_servers
    server web10 <Webサーバ2のローカルIPアドレス>:80

以下は例です。
# Webサーバ1のドメイン名がaaa.comでWebサーバ2のドメイン名がbbb.com
# Webサーバ1のIPアドレスは192.168.1.101
# Webサーバ2のIPアドレスは192.168.1.102

frontend web_proxy
    default_backend web_servers
    use_backend web2_servers if { query -m str bbb.com }
    bind *:80

backend web_servers
    server web01 192.168.1.101:80

backend web2_servers
    server web10 192.168.1.102:80

以下のコマンドを実行しHAProxyを起動します。

systemctl restart haproxy

以下のコマンドを実行しHAProxyをOS起動時に開始させるようにします。

systemctl enable haproxy

フロントサーバのローカルIPアドレスで80番ポートを開放します。

ドメインごとにアクセスし異なるWebサイトが表示されれば成功です!

投稿者 つー