4.12 Apacheリバース・プロキシー

LANSA Integrator

4.12 Apacheリバース・プロキシー


Apacheサーバーは、リバース・プロキシー・サーバーとして機能するように構成できます。

リバース・プロキシー・サーバーは、クライアントに対して通常のWebサーバーと同様に表示されます。

クライアント上で特別な構成は必要ありません。

クライアントは、リバース・プロキシーのネームスペースで内容に関する通常の要求を行います。

リバース・プロキシーはこれらの要求の送信先を決定し、リバース・プロキシー自体が送信元であるかのように内容を返します。

リバース・プロキシーは、通常、インターネット・ユーザーがファイアウォールの後ろにあるサーバーにアクセスする場合に使用されます。

また、複数のバックエンド・サーバー間で負荷を分散する場合や、比較的速度が遅いバックエンド・サーバー用にキャッシュを提供する場合にも使用できます。

さらに、複数のサーバーを同じURLスペースに入れるだけの場合も使用できます。

リバース・プロキシー構成にさらに柔軟性を持たせる必要がある場合は、[P]フラグを使用するRewriteRuleディレクティブを参照してください。

詳細については、以下を参照してください。

http://httpd.apache.org/docs/2.0/mod/mod_proxy.html

以下はIBM Apache Serverの構成例です。

 

# Apache構成 - リバース・プロキシー

#

LoadModule proxy_module /QSYS.LIB/QHTTPSVR.LIB/QZSRCORE.SRVPGM

LoadModule proxy_http_module /QSYS.LIB/QHTTPSVR.LIB/QZSRCORE.SRVPGM

# LoadModule proxy_ftp_module /QSYS.LIB/QHTTPSVR.LIB/QZSRCORE.SRVPGM

# LoadModule proxy_connect_module /QSYS.LIB/QHTTPSVR.LIB/QZSRCORE.SRVPGM

#

Options None

Listen 10.2.0.170:2334

ServerRoot /www/jsmproxy

DocumentRoot /www/jsmproxy/htdocs

# DefaultFsCCSID  37

# DefaultNetCCSID 819

# ServerUserID USERPROFILE

#

LogLevel Warn

LogCycle Daily

ErrorLog logs/error_log

CustomLog logs/access_log combined

LogFormat "%{User-agent}i" agent

LogFormat "%{Referer}i -> %U" referer

LogFormat "%{Cookie}n \"%r\" %t" cookie

LogFormat "%h %l %u %t \"%r\" %>s %b" common

LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined

#

SetEnvIf "User-Agent" "Mozilla/2" nokeepalive

SetEnvIf "User-Agent" "JDK/1\.0" force-response-1.0

SetEnvIf "User-Agent" "Java/1\.0" force-response-1.0

SetEnvIf "User-Agent" "RealPlayer 4\.0" force-response-1.0

SetEnvIf "User-Agent" "MSIE 4\.0b2;" nokeepalive

SetEnvIf "User-Agent" "MSIE 4\.0b2;" force-response-1.0

#

#ユーザー名ベースの仮想ホスティング

NameVirtualHost 10.2.0.170

#

<VirtualHost 10.2.0.170>

  #最初の仮想ホストのディレクティブが省略値のホストになる

  Options None

  ServerName LANSA01

  TimeOut 3000

  ProxyReverse On

  ProxyRequests Off

  ProxyTimeOut 3000

  <Proxy *>

    Order Allow,Deny

    Allow from all

  </Proxy>

  #

  #すべての要求を渡す

  # ProxyPass / http://lansa01:1099/

  # ProxyPassReverse / http://lansa01:1099/

  #

  # CGI要求のみを渡す

  ProxyPass /cgi-bin/ http://lansa01:1099/cgi-bin/

  ProxyPassReverse /cgi-bin/ http://lansa01:1099/cgi-bin/

</VirtualHost>

#

<Directory />

  Options None

  Order Allow,Deny

  Deny from all

  AllowOverride None

</Directory>

#

<Directory /www/jsmproxy/htdocs>

  Options None

  Order Allow,Deny

  # Deny from all

  Allow from all

  AllowOverride None

</Directory>