如何使用Glassfish将domain:port重定向到域?

时间:2013-07-19 11:05:45

标签: eclipse http https glassfish glassfish-3

我有一个像www.example.com这样的域名,我正在使用Glassfish,它在端口12544托管我的应用程序。

所以我想知道两件事:

  1. 如何将此www.example.com:12544重定向到www.example.com

  2. 同样的方法,但https?我的意思是,https://www.example.com

  3. 我真的很新Glassfish任何帮助都会非常感激。

1 个答案:

答案 0 :(得分:0)

最好的方法是将 Glassfish 置于 Apache http服务器之后,并配置apache以将请求指向glassfish。因此,http请求由Apache处理,所有www.example.com请求都在内部指向www.example.com:12544。以下是如何执行此操作的简要说明。

  • 安装Glassfish 3+(确保您的监听器已在 8009 上创建并激活,并且您的jk已启用)
  • 安装Apache(2.2 +)
  • 获取mod_jk连接器并将其放入 apache modules文件夹以进行配置。
  • 创建一个worker.properties文件并将其放入 apache conf文件夹。它应包含以下属性:
    worker.list=worker1
    worker.worker1.type=ajp13
    worker.worker1.host=localhost
    worker.worker1.port=8009
  • apache conf文件夹中打开httpd.conf文件并放置以下命令(在虚拟主机外):
LoadModule jk_module modules/mod_jk.so
#location of the worker file
JkWorkersFile conf/worker.properties
#where to put jk logs
JkLogFile logs/mod_jk.log
#log level [deug/error/info]
JkLogLevel debug
#Log format
JkLogStampFormat "[%a %b %d %H:%M:%S %Y]"
# Indicate to send SSL KEY SIZE
JkOptions +ForwardKeySize +ForwardURICompat -ForwardDirectories
# Set the request format
JkRequestLogFormat "%w %V %T"
# Send all jsp requests to Glassfish
JkMount /*.jsp worker1
# Send all webapp requests to Glassfish
JkMount /* worker1

您还需要在conf文件中添加 VirtualHost 部分。这会将您的域映射到Glassfish中的路径,以便Apache能够看到它。以下告诉apache将所有/ myapp / *链接映射到glassfish

<VirtualHost 111.111.111.111:80>
    ServerAdmin admin@domain
    ServerName domain
    JkMount /myapp/* worker1
</VirtualHost>

注意:如果未创建Glassfish侦听器,则可以使用glassfish asadmin使用以下命令从cmd创建:

asadmin create-network-listener --protocol http-listener-1 --listenerport 8009 --jkenabled true jk-connector
  • 重新启动Apache和Glassfish以获取要更新的新配置。 Apache现在应该在端口80上看到您的Glassfish。因此www.example.com:12544将在www.example.com上提供。