Hil*_*jem 3 amazon-web-services laravel aws-application-load-balancer
我想将 Laravel 网站部署到亚马逊,所以我执行了以下步骤:
请注意,Tg443 具有有效的 SSL 证书
将 Ec2 的安全组更改为负载均衡器的安全组
**结果: **
该网站在 http 端口 80 上完美运行,健康检查也是如此,我可以从任何浏览器正常访问该网站
该网站在 https:443 上返回 [502 Bad Gateway]
在(ssh 到实例后)/var/log/httpd/error_log 中,出现以下错误/var/www/html/.htaccess: RewriteCond: bad flag delimiters
所以,我尝试了,根据链接enforce-https-laravel:
要.htaccess按照链接中所述在 laravel 应用程序中进行配置,请刷新所有内容 `php artisan config:cache,重试运行状况检查,但结果相同
我删除.htaccess并配置了app/Providers/AppServiceProvider.php:
use Illuminate\Contracts\Routing\UrlGenerator;
public function boot(UrlGenerator $url)
{
if(env('ENFORCE_SSL', false)) {
$url->forceScheme('https');
}
}
Run Code Online (Sandbox Code Playgroud)
ENFORCE_SSL=true,.env然后如同一链接php artisan config:cache中所述,这是一种比 更新的方式。.htaccess但结果相同
我不知道该怎么做网络或如何解决这个问题。 我希望能够通过 ssl 访问该网站。请帮忙。谢谢。
根据评论,问题在于健康检查设置为在 ALB 和 EC2 之间使用 HTTPS。但是,由于 ALB 终止 SSL 连接,因此 ALB 和 EC2 之间的所有流量均采用 HTTP,而不是 HTTPS。
因此,无法进行健康检查的解决方案是使用 HTTP,而不是 HTTPS。
| 归档时间: |
|
| 查看次数: |
2585 次 |
| 最近记录: |