web-dev-qa-db-ja.com

GlassFishサーバーの別のポートにApacheをリダイレクトする方法は?

さまざまなポートでさまざまなサービスを実行しているGlassFishインスタンスがあります。 Apache WebサーバーがGlassFishの前にあり、GlassFishサーバーの特定のポートにリダイレクトするようにApacheに仮想ホストを設定したいと思います。

ポート8009でリッスンするjvm-optionとしてTomcatAJPを追加し、必要な.jarをlib /の下に配置しました。

同じインスタンス上のポート8009から特定のポート(サービス)にリダイレクトするようにGlassFishを設定するにはどうすればよいですか?

4
digitalcolony

Ajpを使用する代わりに、mod_proxyを使用することをお勧めします。私はそれを自分で大成功させました。自分のものを設定する方法では、ディレクトリを指すように仮想ドメインを構成し、次のように.htaccessファイルを作成します。

ProxyPass / http://localhost:8080/
ProxyPassReverse / http://localhost:8080/

もちろん、HTTPポートに一致するように変更してください。 Tomcat(私が使用している)では、confの下のserver.xmlでも編集します。ポート8080のコネクタの場合、仮想ホストと一致するようにproxyNameを設定し、proxyPortを80に設定します。

/ etc/Apache2/sites-availableの下の構成に動的仮想ホストを使用していることに注意してください。サイト構成(debianを使用しています)は次のようになります。

<VirtualHost IP>
Servername yourdomain.com
ServerAlias *.yourdomain.com

UseCanonicalName Off

LogFormat "%V %h %l %u %t \"%r\" %s %b" vcommon

CustomLog /var/www/yourdomain.com/logs/custom.log vcommon
ErrorLog /var/www/yourdomain.com/logs/error.log
TransferLog /var/www/yourdomain.com/logs/access.log

RewriteLog/var/www/yourdomain.com/logs/rewrite.log
RewriteLogLevel 2

VirtualDocumentRoot /var/www/yourdomain.com/sites/%1/html
VirtualScriptAlias /var/www/yourdomain.com/sites/%1/cgi-bin

LogLevel debug

<Directory /var/www/yourdomain.com/sites/>
  AllowOverride All
</Directory>

</VirtualHost>

これは、stackoverflow.yourdomain.comが/var/www/yourdomain.com/sites/stackoverflow/htmlに移動することを意味します

私はあなたが最後の部分を求めていなかったことを知っています、私は私のセットアップの完全な概要と、ProxyPassとProxyPassReverseで.htaccessファイルにどのように適合するかを与えるためにそれを提供しました

3
Staale

Glassfishアプリケーションサーバーで使用するために特別に実装され、管理コンソールから開始されたGlassfishアプリサーバー構成コマンドに反応できるApacheモジュールmod_loadbalancerを使用することをお勧めします。

例を参照してください- https://blogs.Oracle.com/kshitiz/entry/load_balancer_plugin_in_glassfish

0
kairius

Apacheを使用して、さまざまなタイプのいくつかの異なるサーバーを指すことができます。

#conf.dのmy_proxies.confというファイルにドロップしてください
#Apacheはconf.d/*。conf

NameVirtualHost*: 80 
 
 <VirtualHost *:80> 
 
#このApacheは、イメージとcgi-bin 
 ProxyPass/images![.____を提供します。 ] ProxyPass/cgi-bin! 
#
#このサーバーにあるもの(Jetty、Glassfish、Tomcat、またはApache)
#
 ProxyPass/foo http:// localhost:8080/foo 
 ProxyPassReverse/foo http:// localhost:8080/foo 
 Redirect/foo http:// localhost:8080/foo 
 ErrorLog /tmp/foo_error_log
CustomLog /tmp/foo_access_log
#
#ルートが最後に来る
#メインアプリを専用のサーバーに配置しましょう
#
 ProxyPass/http: //localhost:9090/
ProxyPassReverse/http:// localhost:9090/
ErrorLog/tmp/bar_error_log
CustomLog /tmp/bar_access_log
#
 </ VirtualHost> 
0
anon