2016-11-18 136 views
1

我已经购买了一个域名www.mydomainname.com 创建了一个Web应用程序并将它部署在ubuntu VS上的glassfish 4.1.1上。 现在我可以通过访问http://my-public-ip:8080/mydomainname/index.jsp 从浏览器访问应用程序,我需要的是在网络浏览器上输入mydomainname.com,最终登录到我的应用程序,而不是在注册商网站的默认页面。如何在glassfish上部署应用程序时将域名设置为IP 4.1.1

我试图在注册商登录到我的帐户,并将请求转发到http://mydomainname.comhttp://my-public-ip:8080/mydomainname/index.jsp,但它仍然在地址栏上显示ip。我该如何做到这一点?

<?xml version="1.0" encoding="UTF-8"?> 
<web-app version="3.1" xmlns="http://xmlns.jcp.org/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd"> 
    <listener> 
     <description>ServletContextListener</description> 
     <listener-class>com.qualebs.controller.SessionListener</listener-class> 
    </listener> 
    <listener> 
     <description>ServletContextListener</description> 
     <listener-class>com.qualebs.controller.ContextListener</listener-class> 
    </listener> 
    <listener> 
     <description>fileupload temporary file cleaner</description> 
     <listener-class>org.apache.commons.fileupload.servlet.FileCleanerCleanup</listener-class> 
    </listener> 
    <servlet> 
     <servlet-name>ImageServlet</servlet-name> 
     <servlet-class>com.qualebs.controller.ImageServlet</servlet-class> 
    </servlet> 
    <servlet> 
     <servlet-name>AsyncServlet</servlet-name> 
     <servlet-class>com.qualebs.controller.AsyncServlet</servlet-class> 
    </servlet> 
    <session-config> 
     <session-timeout> 
      30 
     </session-timeout> 
    </session-config> 
    <jsp-config> 

    </jsp-config> 
</web-app> 

愿意发布任何相关的代码,如果部署描述符在这里不相关。在此先感谢

回答

1

您可以配置GlassFish侦听端口80,以便您不需要指定端口号,但这不会给你最大的控制权。

您试图使用DNS进行的处理由专门的负载平衡器或代理处理得更好。有几个可用的,但受欢迎的是apache httpd; nginxhaproxy

Apache httpd(通常被称为“apache”)是目前使用最广泛的,因此您可能会找到更多关于如何配置它的信息。问题在于,因为它很受欢迎,所以也会有很多令人困惑和不明确的信息!

我对解决方案的建议是使用Apache以及名为mod_jkmod_proxy的两个插件之一。您正在运行Ubuntu,因此有ppa软件包可供Apache和mod_jk使初始设置更容易(默认情况下包含mod_proxy)。

您可以使用任何Apache安装指南,因为服务器端(GlassFish在这种情况下)不需要配置,除非您想要集群这样的东西,而这看起来并不像您这样做。

+0

[本博客文章介绍使用Apache + mod_proxy负载平衡器设置具有GlassFish的群集。](http://blog.c2b2.co.uk/2013/03/creating-simple-cluster-with-glassfish。 html)请注意,您可以忽略聚类部分,并且**绝对**忽略'jk-listener'部分!这对你没有必要,只是'proxypass'指令。 – Mike

+0

[此博客文章继续在Ubuntu上安装apache和mod_jk](http://blog.c2b2.co.uk/2013/10/how-to-install-apache-and-modjk.html)。 – Mike

+0

[本博客文章介绍如何使用mod_jk配置Apache以转发到Tomcat](http://blog.c2b2.co.uk/2014/04/how-to-set-up-cluster-with-tomcat-8.html) 。它也可以与GlassFish一起工作,但您需要在GlassFish中为此启用'jk-listener'部分! 'jvmRoute'位不相关,因为它们用于集群 – Mike

相关问题