我想将laravel应用程序部署到Elastic Beanstalk。该设置包括具有两个专用子网和两个公用子网的VPC。 EC2,RDS等都在专用子网中。
只有ELB在公共场所。并且应该将所有内容路由到私有的内容中。
如果尝试通过ELB连接,则会收到超时错误。
我不确定这是配置问题(VPC /子网)还是应用程序(EB)错误。
但是,我认为请求似乎可以通过并正确路由。因为如果我查看Elastic Beanstalk日志,例如httpd/access.log
我看到了通过ELB发出的请求。
13:38:20
10.0.2.52 (94.79.175.190) - - [22/Oct/2018:13:38:19 +0000] "GET /loadbalancertest HTTP/1.1" 307 307 "-" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/69.0.3497.100 Safari/537.
但是,健康检查似乎可以正常工作。并且应用程序状态为OK。
ELB在两个公共子网中。
ELB安全组设置
入站:HTTP / TCP / 80 / 0.0.0.0/0
出站:HTTP / TCP / 80 / 0.0.0.0 / 0
VPC安全组设置
入站:HTTP / TCP / 80 / sg-03xxxxx(ELB SG)
出站:所有流量/ 0.0.0.0/0
答案 0 :(得分:0)
您的ELB似乎配置正确。
您的后端配置有问题。 HTTP服务返回的HTTP状态307是您的健康检查的临时重定向(除非我读错了日志文件-您永远无法确定自定义日志格式是什么)。奇怪的是,您的日志文件中有307 307
。第一个307是HTTP状态,第二个是为请求返回的字节数。
连接到您的一个后端实例,然后使用curl
到另一个后端实例,并验证运行状况检查URL是否正常运行。然后验证默认主页是否也正常工作。