GlassFish v2 虚拟主机配置感悟

编程入门 行业动态 更新时间:2024-10-10 04:21:28

GlassFish v2 <a href=https://www.elefans.com/category/jswz/34/1750617.html style=虚拟主机配置感悟"/>

GlassFish v2 虚拟主机配置感悟

今天配置了下GlassFish v2的虚拟主机,感觉不错,记下来备忘。 
记得前段时间在公司兼职时曾配过GlassFish的虚拟主机,但没有配置成功,在网上看了一大堆资料,晕头转向,当时被搞糊涂了。 
今天忽然心血来潮在自己的电脑上又做了下试验,把自己的几个域名的别名都指向了我电脑上花生壳帐户,结果很成功,高兴了好一会。 

配置过程如下: 
1.登录GlassFish8484端口的管理界面; 
2.在Http服务器添加一个虚拟主机; 
3.ID随便,主机框中添入要绑定的域名,如:*.sxu.edu,Http监听器添入一个已有Http监听器,如:http-listener-1; 
4.默认WEB模块选择一个已有的web模块; 
5.保存,搞定。 

同Tomcat等相比,感觉有以下不同: 
1.GlassFish上的Http监听器可以任意配置,能配很多个监听器监听不同的端口,虚拟主机要监听器对应; 
2.GlassFish的虚拟主机可以动态配置,Tomcat的管理控制台是不可动态添加虚拟主机的(Tomcat 的Engine类有addChild方法,理论上应该是可以动态添加一个StandardHost类的实例的,不过自己还没试过,不知道到底行不行)。 

总结上次配置失败可能的原因是: 
1.上次的操作系统是Linux系统,可能还得在host文件中配置等; 
2.网上目前关于GlassFish虚拟主机配置的中文文章只有一篇,那个里边介绍的配置方法有问题,如文章中声称一定得建一个监听器之类的实质大可不必,用原有的即可。 

注意事项: 
不能将多个虚拟主机指向同一web模块,否则出错,至少在我的电脑上是这样。 

其它事项思考: 
1.Tomcat在生产环境中往往通过AJP协议和Apache httpd服务器连接协同使用,原因据说是Java的I/O能力不如C/C++,因此Tomcat处理静态资源的能力不如Apache httpd。而GlassFish所使用的web容器实际上是Grizzly,据说这个容器用的是NIO,不知道它的IO能力到底如何,是不是仍存在Tomcat的问题; 

2.Tomcat的内存泄漏问题众所周知,当发布多个应用再反复reload几次Tomcat就会宕机,加大堆后只能多发布几个应用或多reload几次,最终内存还是会不断泄漏完,直到宕机,不知道GlassFish是不是也有此问题(从我以前的使用经验看还没遇见过!)? 



对于一般的小型网站应用,如果能够让多个网站同时共用一个IP地址和同一个端口(就是建立虚拟主机)还是很有实用价值的,以前我是在tomcat中 实现 的,配置方法网友们可以google一下,很多的,下面我主要说一下在glassfish下如何实现,因为关于glassfish的中文资料网上不是很 多,尤其关于虚拟主机功能,glassfish的官方英文文档也说的很模糊(也可能是本人理解不够)。

假如您的应用已经部署到glassfish中,并且能够通过类似http://localhost:8080/appname访问

如果图片您看不清楚,可另存到您的电脑上再看。

1、打开控制台:http://localhost:4848,如下图:

输入用户名:admin     密码:adminadmin      进入控制台

2、展开Configuration-->HTTP Service-->HTTP Listeners、Virtual Servers菜单如下:

3、点击Virtual Servers

3、点击右边的New按钮出现如下界面

4、假如你有两个域名:www.aaa和www.bbb,依次填写内容如下(http listeners暂时不填):

点OK保存如下:

5、同样再建立bbb对应的virtual server

点OK保存

6、现在点HTTP Listeners

点击NEW新建

OK保存

点击Vistual Servers--》vs-1,你会发现http listeners一栏已被自动填成http-listener-3

再点击Vistual Servers--》vs-2,手动填写http listeners一栏为http-listener-3,点save保存

使用命令asadmin stop-domain domain1停止glassfish,用记事本打开glassfish\domains\domain1\config\domain.xml文件,翻 到最后如图

将两个server(红线圈部分)分别改成vs-1和vs-2,不知道为什么此处server应该由glassfish自动填写上vs-1和vs- 2 的,是不是glassfish的一个bug呢?

保存修改,用asadmin start-domain domain1启动glassfish

用:8383和:8383就可以访问了

在本机测试需要将www.aaa和www.bbb和本机地址映射一下,修改WINNT\system32\drivers\etc \hosts文件

另外如果你已经将你的服务端口8383映射到公网的80端口,就可以直接通过: //www.bbb地址访问了


更多推荐

GlassFish v2 虚拟主机配置感悟

本文发布于:2024-02-27 15:05:04,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1707033.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:虚拟主机   GlassFish

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!