Tha*_*ham 3 glassfish application-server java-ee glassfish-3
编辑
我需要换www.myhost.com:8080/myproject-war
到www.myhost.com
.这是我一直在尝试的:
我说明了Virtual Server: server
.我仍然有默认的网络侦听器是http-listener-1和http-listner-2.我将默认Web模块更改为ScholarActive#ScholarActive-war.war
(下拉列表中的唯一选项,因为我只部署了1个应用程序).
对于docroot
,我试试这个
${com.sun.aas.instanceRoot}/applications/ScholarActive/ScholarActive-war_war
Run Code Online (Sandbox Code Playgroud)
或这个
${com.sun.aas.instanceRoot}/applications/ScholarActive/
Run Code Online (Sandbox Code Playgroud)
两者都不起作用.docroot需要指出什么才能实现?
我尝试做的是:当我键入localhost:8080/ScholarActive-war,然后我的应用程序加载,我想这样做,如果我键入locahost:8080,它将加载应用程序,然后剩下的是改变了港口到80.但没有运气.任何的想法?
如果您可以以root身份运行glassfish,只需编辑domain.xml文件,将端口8080更改为端口80.
如果你不想以root身份运行glassfish(你不应该这样做),那么你可以使用apache前面的glassfish.我写了关于在apahce httpd后面运行glassfish v2和v3的博客.
或者,您可以使用iptables将所有流量从端口80路由到端口8080,如下所示:
iptables -t nat -A OUTPUT -o lo -p tcp --dport 80 -j REDIRECT --to-port 8080
Run Code Online (Sandbox Code Playgroud)
至于问题的第二部分 - 删除上下文根,只需要使用"/"上下文根部署应用程序.还有几种方法可以实现这一目标.您可以在部署期间或之后使用管理员Web控制台为Web应用程序设置上下文根.您可以通过命令行进行设置:
asadmin deploy --contextroot "/" webapp.war
Run Code Online (Sandbox Code Playgroud)
或者,您可以将sun-web.xml文件的context-root设置为/.
或者,您可以为虚拟服务器设置默认Web模块,类似于Web管理控制台是端口4848的默认Web模块.我从未尝试过这个.
回答编辑过的问题:要从glassfish管理控制台(localhost:4848)更改默认Web模块,请转到:
Configuration -> Virtual Servers -> server
在那里,您将看到"默认Web模块"的下拉列表.选择已部署的Web应用程序.此应用程序现在将响应根URL.在我自己尝试之后,我注意到我在登录后被重新路由到上下文根目录.这可以通过将我的webapp的上下文roop设置为""/"或者使用
另一种可能性是在apache httpd中使用mod_proxy,并在端口8080上将端口80的"/"映射到"/ myWebApp".这完全避免了上述混乱.
归档时间: |
|
查看次数: |
1488 次 |
最近记录: |