当前位置: 首页 > 知识库问答 >
问题:

AWS Elastic Beanstalk-tomcat java Spring Boot应用程序存在问题

云飞翮
2023-03-14

你知道我不能访问亚马逊弹性豆茎上托管的应用程序的地方吗?

配置: Tomcat 8.5与Java8运行在64位亚马逊Linux /3.0.6我的应用程序:JavaSpring启动应用程序

在我localhost,一切都很好。

我已经设置好服务器了。在我的应用程序中端口=5000。属性文件。

当我尝试使用链接获取我的应用程序登录页面时:

http://testenv-env.eu-west-1.elasticbeanstalk.com/employee/login

我收到和404错误:

HTTP状态404–未找到类型状态报告

留言 /employee/login

但是当我添加一个端口到链接:

http://testenv-env.eu-west-1.elasticbeanstalk.com:5000/employee/login

错误是:无法访问此网站。

我的安全组配置:

/var/log/tomcat8/localhost_access_log.txt

127.0.0.1 - - [17/Nov/2018:10:19:04 +0000] "GET / HTTP/1.1" 404 1074
127.0.0.1 - - [17/Nov/2018:10:21:16 +0000] "GET /employee/login HTTP/1.1" 404 1092
127.0.0.1 - - [17/Nov/2018:10:29:02 +0000] "GET / HTTP/1.1" 404 1074
127.0.0.1 - - [17/Nov/2018:10:29:56 +0000] "GET /employee/login HTTP/1.1" 404 1092

/var/log/httpd/error_log

[Sat Nov 17 10:19:18.529071 2018] [mpm_worker:notice] [pid 3716:tid 140569196038208] AH00295: caught SIGTERM, shutting down
[Sat Nov 17 10:19:22.241929 2018] [ssl:warn] [pid 25414:tid 140137380542528] AH01873: Init: Session Cache is not configured [hint: SSLSessionCache]
[Sat Nov 17 10:19:22.243341 2018] [mpm_worker:notice] [pid 25414:tid 140137380542528] AH00292: Apache/2.4.34 (Amazon) OpenSSL/1.0.2k-fips configured -- resuming normal operations
[Sat Nov 17 10:19:22.243372 2018] [core:notice] [pid 25414:tid 140137380542528] AH00094: Command line: '/usr/sbin/httpd'

还有我的pom。xml依赖关系:

<groupId>com.project</groupId>
    <artifactId>iam</artifactId>
    <version>0.0.1-SNAPSHOT</version>
    <packaging>war</packaging>

    <name>iam</name>
    <description>Demo project for Spring Boot</description>

    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>2.1.0.RELEASE</version>
        <relativePath/> <!-- lookup parent from repository -->
    </parent>

    <properties>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
        <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
        <java.version>1.8</java.version>
    </properties>

    <dependencies>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-data-jpa</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>

        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-security</artifactId>
        </dependency>

        <dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
            <scope>runtime</scope>
        </dependency>

        <dependency>
 <groupId>org.apache.tomcat.embed</groupId>
 <artifactId>tomcat-embed-jasper</artifactId>
</dependency>

        <dependency>
 <groupId>javax.servlet</groupId>
 <artifactId>jstl</artifactId>
</dependency>

        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-test</artifactId>
            <scope>test</scope>
        </dependency>
<dependency>
 <groupId>org.webjars</groupId>
 <artifactId>bootstrap</artifactId>
 <version>4.0.0</version>
</dependency>


    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-devtools</artifactId>
    </dependency>


    </dependencies>

    <build>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
            </plugin>
        </plugins>
    </build>

共有2个答案

孟乐
2023-03-14

第一步是检查你的URL

http://iam-env.eu-west-1.elasticbeanstalk.com/employee/login

本身看起来不正确。它太笼统了,不可能是对的。我建议您查看AWS豆茎所有应用程序屏幕。在右边出现的正确环境框中,你会发现你的网址是这样的

https://test-env.asu2mcXXrr.eu-west-2.elasticbeanstalk.com

柴砚文
2023-03-14

@michal9225您只需设置路由。beanstalk URL预期您的应用程序正在端口80上运行,在本地系统中开发应用程序时,我们通常会更改端口,因为其他应用程序或服务可能正在最常见的端口上运行。

现在你有两个选择:-

1-设置负载平衡器,将5000端口路由到80,然后通过负载平衡器URL访问应用程序

2-将应用程序中的端口从5000更改为80。属性文件(server.port=80)

 类似资料:
  • 我正在尝试使用micronaut创建内存开销较低的微服务。从使用micronaut开始,我遇到了一些问题,启动时内存开始变低,但加载时内存膨胀,无法恢复。 我正在用一个小应用程序测试它,该应用程序从Rest调用中获取一个项目,做一些工作,模拟内存峰值,并将结果存储在数据库中。如果我运行jar文件,应用程序从大约170mb的内存开始,在诱导的峰值位于大约700mb之后。本机映像具有类似的结果,尽管启

  • 我们正在使用一个3站点,每个站点3个节点的Cassandra 1.1.12集群,每个节点分配了8GB内存。我们定期在节点上看到长时间的GC暂停,这扰乱了我们的应用程序实时要求。我们运行的系统是8个核心系统,具有24GB内存。 我们已经看到了120秒的暂停,它会停止世界GC。 我们在JDK 1.7.0_04上运行这些标志 以下是导致长时间暂停的详细GC日志: 我还设置了一个夜间作业,强制GC在凌晨2

  • 主要内容:什么是应用程序缓存(Application Cache)?,浏览器支持,HTML5 Cache Manifest 实例,实例,Cache Manifest 基础,Manifest 文件,更新缓存,实例 - 完整的 Manifest 文件,关于应用程序缓存的说明使用 HTML5,通过创建 cache manifest 文件,可以轻松地创建 web 应用的离线版本。 注意:manifest 的技术已被 web 标准废弃,不再推荐使用此功能。 什么是应用程序缓存(Application Ca

  • 使用 HTML5,通过创建 cache manifest 文件,可以轻松地创建 web 应用的离线版本。 什么是应用程序缓存(Application Cache)? HTML5 引入了应用程序缓存,这意味着 web 应用可进行缓存,并可在没有因特网连接时进行访问。 应用程序缓存为应用带来三个优势: 离线浏览 - 用户可在应用离线时使用它们 速度 - 已缓存资源加载得更快 减少服务器负载 - 浏览器

  • 当我调试我的应用程序时,它会显示一个错误,如BUILD FAILED 总时间:1分钟41.485秒执行任务:[: app: GenerateDebugSSource,: app: GenerateDebugAndroidTestSSource,: app: mockableAndroidJar,: app: preareDebugUnitTestDependency] 失败:构建失败,但有例外。

  • 问题内容: 告诉我,我无法上传到AppEngine appcfg: 该应用程序不存在。 我只是AppEngine的开发人员,因此在进行测试时,我创建了一个新的AppEngine,我是所有者,但在新创建的AppEngine上仍然收到相同的消息。 问题答案: 我发现的解决方法是添加参数–: 当您从同一台计算机上的不同Google帐户上传AppEngine应用程序时,可能会发生这种情况。