我正在尝试使用AWS的Java配置(而不是其Tomcat配置)在AWS Elastic Beanstalk上部署一个非常简单的Spring Boot应用程序,但是通过以下日志始终收到502错误:
2016/06/10 02:00:14 [error] 4921#0: *1 connect() failed (111: Connection refused) while connecting to upstream, client: 38.94.153.178, server: , request: "GET /test HTTP/1.1", upstream: "http://127.0.0.1:5000/test", host: "my-single-instance-java-app.us-east-1.elasticbeanstalk.com"
我尝试通过Spring的application.properties将端口设置为日志似乎想要的值(使用,使用5000 server.port=5000),并已验证我的应用程序已在本地主机的该端口上成功运行。
server.port=5000
这是我的Spring申请:
@SpringBootApplication public class MyApplication { public static void main(String[] args) { SpringApplication.run(MyApplication.class, args); } @RestController public static class MainController { @RequestMapping("/test") public String testMethod() { return "Method success!"; } } }
Nginx不知道您的spring boot applicaiton在哪个端口上运行。通过在最后一步中将“ server.port = 5000”添加到application.properties或其他建议的方式,使应用程序在Nginx默认重定向到的端口5000上运行:
https://pragmaticintegrator.wordpress.com/2016/07/12/run-your-spring-boot- application-on-aws-using-elastic- beanstalk/