You need to enable JavaScript to run this app. Elastic Beanstalk Classic Load Balancer无法实现HTTP到HTTPS重定向求助
优惠活动
大模型
产品
解决方案
定价
更多

Elastic Beanstalk Classic Load Balancer无法实现HTTP到HTTPS重定向求助

Elastic Beanstalk 环境HTTP到HTTPS重定向失效排查方案

一、Classic Load Balancer 配置校验

  • 核对监听器端口转发规则:
    • 443端口(HTTPS)监听器的后端转发目标端口,需和EC2实例上Apache实际监听的业务端口一致(通常为80),禁止将HTTPS监听器的后端转发目标设为443端口
    • 80端口(HTTP)监听器的安全组入方向规则,需放开0.0.0.0/0的访问权限,避免仅放行HTTPS流量导致HTTP请求无法触达LB
  • 确认HTTPS监听器关联的SSL证书:检查证书是否覆盖当前绑定域名、是否在有效期内,避免出现域名不匹配的浏览器报错
  • 核心误区提示:Classic Load Balancer 本身无内置HTTP到HTTPS的自动跳转规则,跳转逻辑必须在应用层(Apache服务)实现,仅添加443监听器无法实现跳转

二、Apache 层跳转配置落地

因选择Apache作为Web服务器,需通过项目内置配置目录写入跳转规则,避免手动登录EC2实例修改配置(防止自动伸缩拉起的新实例丢失配置):

  • 在项目根目录下新建路径结构.platform/httpd/conf.d/https_redirect.conf,写入以下配置:
    <VirtualHost *:80>
        ServerName 你的绑定域名
        Redirect permanent / https://你的绑定域名/
    </VirtualHost>
    
  • 配置写入时不要删除Apache默认的安全权限规则块,避免出现403权限报错
  • 完成配置后将项目重新部署到EB环境,待Apache服务重启完成后,所有80端口的HTTP请求会自动返回301状态码,跳转到对应HTTPS地址

三、域名解析配置校验

  • 确认Namecheap侧的域名DNS服务器,已切换为Route53提供的权威DNS地址,未残留Namecheap默认的解析记录指向旧IP
  • 确认Route53中的域名A记录为别名记录(Alias Record),直接指向EB环境对应的Classic Load Balancer DNS地址,不要手动填写LB的公网IP(手动填写IP会在LB地址变更后直接导致解析失效)
  • 本地执行curl -v http://你的绑定域名,查看响应头中是否存在301跳转的Location字段,无对应字段则说明跳转配置未生效

四、安全组链路打通校验

  • EB关联的EC2实例安全组,入方向需放开来自Classic LB安全组的80、443端口访问权限,不要直接将全量公网访问权限绑定到EC2实例
  • Classic LB的安全组出方向规则,需允许指向EC2实例80端口的流量,禁止过度限制出方向规则导致请求无法转发到后端Apache服务

内容的提问来源于stack exchange,提问作者Kakashi Hatake

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.11.11 01:54:10