AWS Elastic Beanstalk通过单实例配置https

这篇具有很好参考价值的文章主要介绍了AWS Elastic Beanstalk通过单实例配置https。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

在 AWS Elastic Beanstalk 上提供了多种方式来实现 https,比如通过单实例配置,负载均衡配置等。今天就以 nodejs + express 为例说一下怎么通过单实例配置实现https

创建demo应用

创建一个简单的 nodejs + express 应用 myapp,其中包含两个文件 package.json 和 app.js。

package.json

{
  "name": "myapp",
  "version": "1.0.0",
  "description": "",
  "main": "index.js",
  "scripts": {
    "start": "node app.js",
    "dev": "nodemon app.js"
  },
  "author": "",
  "license": "ISC",
  "dependencies": {
    "express": "^4.18.2",
    "nodemon": "^3.0.3"
  }
}

app.js

const express = require('express');

const app = express();

const port = process.env.PORT || 3000;

app.get("/", (req, res, next) => {
  res.send("Express Server");
});

app.listen(port, () => {
  console.log(`[server]: Server is running at http://localhost:${port}`);
});

配置https

.ebextensions/https-instance.config

在应用目录下创建 “.ebextensions/https-instance.config” 文件,内容如下

files:
  # Public certificate
  /etc/pki/tls/certs/server.crt:
    mode: "000400"
    owner: root
    group: root
    content: |
      -----BEGIN CERTIFICATE-----
      ...
      -----END CERTIFICATE-----

  # Private key
  /etc/pki/tls/certs/server.key:
    mode: "000400"
    owner: root
    group: root
    content: |
      -----BEGIN PRIVATE KEY-----
      ...
      -----END PRIVATE KEY-----

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

其中证书和私钥的内容可以从证书和私钥文件获取。

.platform/nginx/conf.d/https.conf

在应用目录下创建 “.platform/nginx/conf.d/https.conf” 文件,内容如下

server {
    listen       443 ssl;
    server_name  localhost;
    
    ssl_certificate      /etc/pki/tls/certs/server.crt;
    ssl_certificate_key  /etc/pki/tls/certs/server.key;
    
    ssl_session_timeout  5m;
    
    ssl_protocols  TLSv1 TLSv1.1 TLSv1.2;
    ssl_prefer_server_ciphers   on;
    
    location / {
        proxy_pass              http://localhost;
        proxy_set_header        Connection "";
        proxy_http_version      1.1;
        proxy_set_header        Host            $host;
        proxy_set_header        X-Real-IP       $remote_addr;
        proxy_set_header        X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header        X-Forwarded-Proto https;
    }
}

部署

在应用目录下将所有元文件打包,然后按照正常应用部署的方式部署就可以了,只是其中 “Capacity -> Auto scaling group -> Environment type” 要选成 “Single instance”。

然后就可以通过 https://xxx.elasticbeanstalk.com/ 访问了。文章来源地址https://www.toymoban.com/news/detail-832986.html

到了这里,关于AWS Elastic Beanstalk通过单实例配置https的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • AWS EC2手动/自动切换Elastic IP

    一,手动切换 Elastic IP  1,进入ec2控制台,选中实例然后操作-联网-管理IP地址  2进入分配 Elastic IP页面,点击分配 3,分配 Elastic IP 4,配置 Elastic IP   5,关联ip地址 二,自动脚本更换实例ip地址 1,进入服务器设置aws configure,先到iam界面生成一个Access keys,然后到实例中配置Access keys  

    2024年02月11日
    浏览(32)
  • Windows 通过本地终端使用AWS CLI 和简单的用户配置

    learmer Lab 的AWS END之后再要连线要重新配置用户信息 ​ 使用AWS服务资源有三种方法:网页的服务控制台(这是比较简单和直观的使用方法),通过SDK来调用(这是通过编程语言来调用AWS服务的方法是有这方面需求的时候会使用的方法),AWS CLI(这是AWS自己的一个命令行管理工

    2023年04月09日
    浏览(35)
  • AWS——01篇(AWS入门 以及 AWS之EC2实例及简单实用)

    什么是AWS? 好,我就截这么多,更多的自己搜搜看…… 官网地址如下: https://aws.amazon.com/cn/. 注册时,如果有谷歌邮箱,最好使用谷歌邮箱,如下: 按照提示注册成功之后,登录即可使用 随便点点,貌似看到了点东西 继续…… 3.1.1 入口 如下: 3.1.2 设置名称 + 选择服务 如

    2024年02月14日
    浏览(60)
  • 【aws】| 04 | AWS EC2 实例磁盘空间扩容

    进入控制台,选择 EBS - Volumes -Action - Modify Volume 首先使用lsblk可以查看附加到实例上的所有存储卷的真实size以及分区情况 注: 挂载在根目录上的是EBS存储卷上的分区而不是这个卷,而且卷被扩容但是分区大小不变依旧不能扩容。 xvda是一个存储卷,xvda1是存储卷上的一个分区

    2024年02月11日
    浏览(72)
  • 【AWS】如何用SSH连接aws上的EC2实例(虚拟机)?

    目录 0.环境 1.连接结果示例 2.SSH连接思路 3.具体步骤 1)安装并运行ssh服务 2)启动ssh服务 3)在AWS上找到正在运行的EC2实例,并且根据提供的ssh连接语句进行连接 windows 11 64位 前提: 有aws账户(IAM),已经存在一个EC2实例(虚拟机) 首先,需要有AWS账户以及正在运行的EC2实

    2024年02月10日
    浏览(42)
  • AWS实例启动时自动执行脚本

    修改每个实例的用户数据 实例 = 操作  =  实例设置  =  编辑用户数据 - [scripts-user, always]:重启也执行一遍这个脚本 /bin/echo \\\"Hello World\\\" /tmp/testfile.txt :此部分可以替换成你自己的脚本代码 注意:这个脚本任务是使用的 root用户 执行的,所以需要注意shell代码里 ~ 的路径指向

    2024年02月11日
    浏览(43)
  • AWS EC2实例管理

    针对近期学习的AWS EC2实例进行知识归纳与总结,欢迎家人们指正错误!ψ(`∇´)ψ AWS:亚马逊网络服务平台(亚马逊云服务平台)(Amazon Web Service) 英文全称:Amazon Elastic Compute Cloud 中文全称:亚马逊弹性计算云,又名“实例(instance)” 通俗理解:实例是 AWS 云中的 虚拟服

    2024年02月04日
    浏览(54)
  • 【AWS入门】AWS Auto Scaling根据EC2负载的情况伸缩EC2实例

    Auto Scalling:根据EC2负载的情况伸缩EC2实例,配置方式有两种,一种时启动模板(推荐),一种时启动配置(即将下线,不推荐),接下来我们就来尝试以下用启动模板的方式来配置Auto Scaling。 EC2 启动模板 创建启动模板 设置资源标签:以后扩展的所有EC2实例,名字都会叫d

    2024年02月11日
    浏览(46)
  • 通过玩游戏学会AWS

    游戏名字 :   Cloud Quest 类型: 亚马逊云科技官方出了一款 3D 角色扮演、虚拟城市建造形式的游戏实验课 进入方法: 浏览器搜索 Cloud Quest(或扫描下方二维码)进入 Cloud Quest 课程页。 选择以下的链接 点击进行注册 进入下方图例,登录账户 如果非公司账户,选择下图的A

    2024年02月20日
    浏览(48)
  • Prometheus 自动发现监控AWS EC2实例

    本文章简述对接自动发现AWS云EC2实例 前提环境: Promethues Grafana AWS IAM权限 涉及参考文档: AWS EC2 Grafana 通用监控模板 一、IAM 用户创建 1、创建Prometheus 策略 策略规则: 2、创建用户赋予Prometheus 策略 创建过程成,请下载ak、sk 此过程不演示。 二、配置Prometheus 可参考本文章进

    2024年02月04日
    浏览(78)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包