如何使用https在弹性beantalk中配置单个ec2实例

编程入门 行业动态 更新时间:2024-10-11 17:27:02

<a href=https://www.elefans.com/category/jswz/34/1771452.html style=如何使用https在弹性beantalk中配置单个ec2实例"/>

如何使用https在弹性beantalk中配置单个ec2实例

到目前为止,拥有https的最简单方法是在弹性beantalk中使用负载平衡器,最近他们创建了一篇说明以下内容的文章。

您可以使用配置文件来配置代理服务器,该代理服务器将流量传递到您的应用程序以终止HTTPS连接。如果要在单个实例环境中使用HTTPS,或者将负载均衡器配置为通过流量而不进行解密,则此选项很有用。

要启用HTTPS,您必须允许端口443上的传入流量进入运行Elastic Beanstalk应用程序的EC2实例。为此,您可以使用配置文件中的Resources键将端口443的规则添加到AWSEBSecurityGroup安全组的入口规则中。

以下代码段将入口规则添加到AWSEBSecurityGroup安全组,该规则为单个实例环境的所有流量打开端口443:

。ebextensions / https-instance-securitygroup.config

Resources:
  sslSecurityGroupIngress: 
    Type: AWS::EC2::SecurityGroupIngress
    Properties:
      GroupId: {"Fn::GetAtt" : ["AWSEBSecurityGroup", "GroupId"]}
      IpProtocol: tcp
      ToPort: 443
      FromPort: 443
      CidrIp: 0.0.0.0/0

[他们还要求您在.ebextensions文件夹中包含另一个弹性beantalk配置文件,可在此处找到.html

将私钥内容替换为用于创建证书请求或自签名证书的私钥内容。

我已经完成了在ebextensions文件夹中创建的配置文件中添加私钥内容和公共证书的步骤。部署有效,但是当我转到弹性beantalk URL时,它不是https。

回答如下:

您链接的nginx配置只会为端口443添加另一个侦听器。它不会自动将HTTP流量重定向到https端点。您可以尝试使用应用程序的https版本,看看是否可以使用吗?

您可以覆盖端口80的配置,但是更简单的解决方案可能是在应用程序代码中处理该配置。如果查看端口443的配置,它将向您的node.js应用程序发送X-Forwarded-Proto标头。

我认为此博客文章可能会对您有所帮助:http://blog.lookfar/blog/2017/07/19/how-to-https-all-the-things-in-node/

  app.use(function(req, res, next){
    if(req.header('x-forwarded-proto') !== 'https'){
        res.redirect('https://' + req.header('host') + req.url);
    }else{
        next();
    }
  })

更多推荐

如何使用https在弹性beantalk中配置单个ec2实例

本文发布于:2024-05-07 13:50:41,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1756538.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:如何使用   弹性   实例   https   beantalk

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!