首页 > 解决方案 > Laravel 应用程序未在给定的 Elastic Beanstalk URL 上打开

问题描述

我创建了在 64 位 Amazon Linux/2.9.6、Apache 上运行的新 beanstalk 环境 PHP 7.3 - 使用默认 PHP 示例应用程序。这是一种经典的负载均衡器类型。但是现在我让它只在端口 80 上监听 http。没有 https。

部署后,默认 PHP 示例应用程序在提供的 beanstalk 环境 url(cname) 上运行良好。示例 PHP 应用程序打开,因为我的环境只监听 http,所以在浏览器中我收到“不安全”警告作为正常行为,但我的 Beanstalk URL 到目前为止工作正常,我在浏览器上看到 PHP 示例应用程序。

现在我在本地机器上创建了新的 Laravel 7.x 项目。我测试了默认的“/”路由点来欢迎 Laravel 页面。我在我的 Mac 终端上使用 EB 将这个示例 Laravel 项目部署到我的环境中。

部署成功。我在配置中将文档根目录更改为“/public”,因为 Laravel 的索引位于公用文件夹中。环境处于绿色健康状态。现在我打开 Beanstalk URL,我看到它只需要一分钟左右,然后它无法在 Safari 浏览器中加载“此页面所在的服务器没有响应”的页面。

我检查了我的安全组,它正在监听 http 和 ssh。

最后说明:我已经这样做了很长时间。这是我第一次遇到这个问题。我错过了什么吗?

编辑

我进入了 Ec2 仪表板。我复制了公共 DNS (IPv4) 和 IPv4 公共 IP,尝试在浏览器中访问它们。连接并完成“页面无响应错误”只需要时间。

我的安全组的入站规则:

HTTP    TCP 80  0.0.0.0/0   -
SSH TCP 22  0.0.0.0/0   -
HTTPS   TCP 443 0.0.0.0/0   -

编辑 2

这是我来自环境日志的访问日志:

172.31.21.84 (103.86.57.43) - - [24/May/2020:18:34:31 +0000] "GET / HTTP/1.1" 301 278 "-" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/13.1 Safari/605.1.15"
103.86.57.58 (-) - - [24/May/2020:18:37:45 +0000] "GET / HTTP/1.1" 301 230 "-" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/13.1 Safari/605.1.15"
172.31.10.171 (195.154.94.244) - - [24/May/2020:18:45:10 +0000] "GET / HTTP/1.1" 301 228 "-" "Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:76.0) Gecko/20100101 Firefox/76.0"

我看到在 / 上调用了 GET 并返回了 http 301。它永久地移动了。这是什么意思?

标签: laravelamazon-web-servicesamazon-elastic-beanstalk

解决方案


我通过在终端中使用 eb cli 创建新的环境来解决我的问题

eb create

不知道为什么这有效,但在从控制台仪表板创建环境时出现问题。


推荐阅读