【问题标题】:Tomcat deployment on Elastic Beanstalk: The site cannot be reachedElastic Beanstalk 上的 Tomcat 部署:无法访问该站点
【发布时间】:2018-05-06 16:13:54
【问题描述】:

我正在尝试将 Tomcat Web 应用程序部署到 AWS EB 上的环境中,当我这样做时,一切都很顺利,直到我尝试查看超时并通知无法访问该站点的页面。

在本地主机上部署到 Tomcat 时,一切正常,我使用相同的 war 文件在 AWS 上进行部署。两者都使用Tomcat 8.0,war文件的结构是:

-CarbonCost.war
  -WEB-INF
    -lib
    -classes
      -Controller
        -Controller.class
        -Connect.class
    -web.xml
  -META-INF
  -js
  -img
  -css
  -index.jsp
  -page2.jsp

来自 AWS 的 catalina.log 文件:

22-Nov-2017 18:03:49.754 INFO [main] org.apache.catalina.core.AprLifecycleListener.lifecycleEvent The APR based Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: /usr/java/packages/lib/amd64:/usr/lib64:/lib64:/lib:/usr/lib
22-Nov-2017 18:03:50.045 INFO [main] org.apache.coyote.AbstractProtocol.init Initializing ProtocolHandler ["http-nio-8080"]
22-Nov-2017 18:03:50.095 INFO [main] org.apache.tomcat.util.net.NioSelectorPool.getSharedSelector Using a shared selector for servlet write/read
22-Nov-2017 18:03:50.108 INFO [main] org.apache.coyote.AbstractProtocol.init Initializing ProtocolHandler ["ajp-nio-8009"]
22-Nov-2017 18:03:50.119 INFO [main] org.apache.tomcat.util.net.NioSelectorPool.getSharedSelector Using a shared selector for servlet write/read
22-Nov-2017 18:03:50.124 INFO [main] org.apache.catalina.startup.Catalina.load Initialization processed in 11657 ms
22-Nov-2017 18:03:50.220 INFO [main] org.apache.catalina.core.StandardService.startInternal Starting service Catalina
22-Nov-2017 18:03:50.220 INFO [main] org.apache.catalina.core.StandardEngine.startInternal Starting Servlet Engine: Apache Tomcat/8.0.45
22-Nov-2017 18:03:50.260 INFO [localhost-startStop-1] org.apache.catalina.startup.HostConfig.deployDirectory Deploying web application directory /var/lib/tomcat8/webapps/ROOT
22-Nov-2017 18:03:52.321 INFO [localhost-startStop-1] org.apache.jasper.servlet.TldScanner.scanJars At least one JAR was scanned for TLDs yet contained no TLDs. Enable debug logging for this logger for a complete list of JARs that were scanned but no TLDs were found in them. Skipping unneeded JARs during scanning can improve startup time and JSP compilation time.
22-Nov-2017 18:03:52.431 INFO [localhost-startStop-1] org.apache.catalina.startup.HostConfig.deployDirectory Deployment of web application directory /var/lib/tomcat8/webapps/ROOT has finished in 2,170 ms
22-Nov-2017 18:03:52.443 INFO [main] org.apache.coyote.AbstractProtocol.start Starting ProtocolHandler ["http-nio-8080"]
22-Nov-2017 18:03:52.490 INFO [main] org.apache.coyote.AbstractProtocol.start Starting ProtocolHandler ["ajp-nio-8009"]
22-Nov-2017 18:03:52.513 INFO [main] org.apache.catalina.startup.Catalina.start Server startup in 2388 ms

我意识到这可能没有足够的信息继续下去,但我完全不知道如何继续,所以任何一般性指导都会很棒。

谢谢

【问题讨论】:

    标签: java amazon-web-services tomcat web-applications amazon-elastic-beanstalk


    【解决方案1】:

    我在修修补补时几乎偶然发现了解决方案。我在 EC2 实例所属的安全组中添加了一条规则允许来自任何 IP 地址的入站 HTTP 访问。

    如果有人能确认这是正确的配置,那就太好了。

    【讨论】:

      【解决方案2】:

      对不起,我会评论你的答案,但我的代表目前还不够高。您的配置看起来正确,这是一个健康的启动日志。最后一行Server startup in x ms 表示服务器成功启动所需的时间。如果你看到这个你很好!

      附带说明,如果您要允许来自任何 IP 的访问,最好将安全组中的入站访问限制为某些应用程序端口(即 http 服务器的 80 和 443)。这将防止公共互联网上的人们尝试暴力破解端口 22 上的 SSH 连接和其他漏洞。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2016-10-24
        • 2017-12-13
        • 1970-01-01
        • 2013-03-23
        • 2021-07-19
        • 2019-10-03
        • 2013-03-05
        • 1970-01-01
        相关资源
        最近更新 更多