您可以使用AWS Elastic Load Balancer(ELB)来实现将非www重定向到https://www。以下是一个使用AWS CLI创建Application Load Balancer(ALB)并配置重定向的示例。
aws ec2 create-security-group --group-name MySecurityGroup --description "My security group"
aws elbv2 create-load-balancer --name MyLoadBalancer --subnets subnet-12345678 --security-groups sg-12345678 --type application
aws elbv2 create-target-group --name MyTargetGroup --protocol HTTP --port 80 --vpc-id vpc-12345678
aws elbv2 create-listener --load-balancer-arn arn:aws:elasticloadbalancing:us-west-2:123456789012:loadbalancer/app/MyLoadBalancer/1234567890abcdef --protocol HTTP --port 80 --default-actions Type=redirect,RedirectConfig={Protocol=HTTPS,Port=443,Host='#{host}',Path='/#{path}',Query='#{query}',StatusCode=HTTP_301}
以上命令中的参数需要替换为您自己的实际值。
这将创建一个监听器,它将从80端口接收HTTP请求,并将其重定向到443端口的HTTPS协议。重定向的目标URL将包括原始请求的主机(host)部分,路径(path)部分和查询(query)部分,并使用HTTP 301状态码。
请注意,您可能还需要为您的域名配置适当的DNS记录,以将非www的请求指向ALB的DNS名称。