我正在尝试将Node.js Express服务器部署到AWS EB,但配置代理时遇到一些问题。
如果扩展文件夹下没有elasticloadbalancing.config文件,那么我可以通过HTTP和端口3000访问服务器。但是,如果我想添加配置以启用HTTPS并将侦听器端口433代理到实例端口3000,然后该网站无法加载。
这是我的配置文件,
option_settings:
aws:elb:listener:443:
ListenerProtocol: HTTPS:
SSLCertificationeId: arn****
InstancePort: 3000
InstanceProtocol: HTTP
有人能给我任何建议吗?
我不确定EB是否配置正确,因为一旦我部署了配置文件,Web层配置中的负载平衡中的所有端口都关闭了。 EB会自动使用负载余额吗?
感谢。
答案 0 :(得分:1)
您需要指定config以从ELB打开实例端口访问。
Resources:
sslSecurityGroupIngress:
Type: AWS::EC2::SecurityGroupIngress
Properties:
GroupId: {"Fn::GetAtt" : ["AWSEBSecurityGroup", "GroupId"]}
IpProtocol: tcp
ToPort: 3000
FromPort: 3000
SourceSecurityGroupName: {"Fn::GetAtt" : ["AWSEBLoadBalancer" , "SourceSecurityGroup.GroupName"]}
请参阅
中提供的文档http://docs.aws.amazon.com/elasticbeanstalk/latest/dg/configuring-https-elb.html