0

各ホストの 2 つのサーバーにデプロイされた同じコンテキスト ルートを持つ 2 つの war ファイルがあります。同じコンテキスト ルートを維持する理由は、オープン ソース戦争であり、コンテキスト ルートを変更するには微調整が必​​要であるため、同じコンテキスト ルートを使用しようとしています (ただし、必要に応じてコンテキスト ルートを変更することは可能です)。

以下はホスト名とポート名です

drhapp05:8085 - コンテキスト ルート /openam を持つ IDP
drhapp05:8086 - コンテキスト ルート /openam を持つ IDPProxy

drhapp06:8085 - コンテキスト ルート /openam を持つ IDP
drhapp06:8086 - コンテキスト ルート /openam を持つ IDPProxy

私たちの目標は、URL
idpdev.devs1.int ==> にアクセスするときに、リクエストが実行中の IDP に転送されることです。

 
  drhapp05:8085/openam または drhapp06:8085/openam

idpproxydev.devs1.int ==>リクエストは、で実行されているIDPPRXYに転送する必要があります

  drhapp05:8086/openam または drhapp06:8086/openam 

そのため、 https://community.jboss.org/wiki/VirtualHostsWithJBossAS7のドキュメントに従って次の変更を加えました 。

domain.xml 内 (ドメイン モードを使用しているため)

       <virtual-server name="devidpvs" default-web-module="OAM-IDP-1.0">
            <alias name="idpdev.devs1.int"/>
            <alias name="drhapp05"/>
            <alias name="drhapp06"/>
       </virtual-server>
       <virtual-server name="devproxyvs" default-web-module="OAM-IDPPROXY-1.0">
            <alias name="idpproxydev.devs1.int"/>
            <alias name="drhapp05"/>
            <alias name="drhapp06"/>
       </virtual-server>

各 war の jboss-web.xml で

jboss-web.xml の openam war (OAM-IDP-1.0.war) の idp バージョンでは、

        <jboss-web>
           <context-root>openam</context-root>
           <virtual-host>devidpvs</virtual-host>
         </jboss-web>

jboss-web.xml の idpproxy バージョンの openam war (OAM-IDPPROXY-1.0) では、

        <jboss-web>
           <context-root>openam</context-root>
           <virtual-host>devproxyvs</virtual-host>
         </jboss-web>

最後に、httpd.conf ファイルの modcluster で、Web サーバーの httpd.conf ファイルに以下を追加しました。

              <VirtualHost *:80>
                ServerName idpdev.devs1.int
              </VirtualHost>
              <VirtualHost *:80>
                ServerName idpproxydev.devs1.int
              </VirtualHost>

この構成では、両方の URL に同時にアクセスすることはできません。

シャットダウンする場合
drhapp05:8086 - IDPProxy
drhapp06:8086 - IDPProxy
次に、リクエストを転送する idpdev.devs1.int/openam という URL を使用して IDP にアクセスできます。
drhapp05:8085/openam または drhapp06:8085/openam へ
およびその逆。

ProxyPass On ディレクティブを試しましたが、これは要求を転送する代わりに要求をリダイレクトします。
私たちの設定に問題があると思いますか?
また、domain.xml のエイリアス タグの下にポート名を指定する方法があるかどうかも疑問でした。

-RAM

4

1 に答える 1

0
  1. 重複を避けるために新しい dns 名を作成し、domain.xml (または standalone.xml) を更新しました。

     <virtual-server name="devidpvs" default-web-module="OAM-IDP-1.0">
      <alias name="idpdev.devs1.int"/>
        <alias name="drhapp05_internal"/>
        <alias name="drhapp06_internal"/>
     </virtual-server>
     <virtual-server name="devproxyvs" default-web-module="OAM-IDPPROXY-1.0">
        <alias name="idpproxydev.devs1.int"/>
        <alias name="drhapp05_external"/>
        <alias name="drhapp06_external"/>
     </virtual-server>
    

drhapp05_external および drhapp05_internalの IP アドレスが
drhapp05 に一致するように
drhapp06_external および drhapp06_internal が drhapp06 に一致するように

  1. httpd.conf に追加属性 UseAlias を追加しました

           <VirtualHost *:80>
            ServerName idpdev.devs1.int
            UseAlias 1   
          </VirtualHost>
          <VirtualHost *:80>
            ServerName idpproxydev.devs1.int
            UseAlias 1 
          </VirtualHost>
    

以下の domain.xml で一意性を確保する方法として、domain.xml でポート番号を指定する方法があるかどうか疑問に思っていました........ ホスト名が domain.xml 全体で一度しか使用できないのは奇妙です。
とにかく今のところ、上記のソリューションを使用しており、機能しています。

于 2013-04-17T13:44:45.943 に答える