『亚马逊云科技产品测评』活动征文|EC2 实例安装 docker 与配套软件部署前后端分离的医疗管理后台系统

授权声明:本篇文章授权活动官方亚马逊云科技文章转发、改写权,包括不限于在 Developer Centre, 知乎,自媒体平台,第三方开发者媒体等亚马逊云科技官方渠道  

目录

一、AWS 产品类别选择

(1)应用服务器选择 

(2)数据服务器选择 

(3)存储云盘选择

二、前置准备 

(1)域名准备、证书申请、网站备案、AWS 启动新实例、端口开放 

(2)AWS 连接实例

(3)查看操作系统信息 

三、EC2 实例安装 docker

(1)更新系统软件包 

(2)安装 docker 所需的依赖项 

(3)启动 docker 服务并设置开机自启动

(4)验证 docker 是否安装成功

(5)查看已安装的 docker 版本号 

(6)查找 docker 可执行文件的实际路径 

四、EC2 实例使用 docker 安装 jdk

(1)查找 Docker Hub 上的 Dragonwell JDK 镜像

(2)拉取 Dragonwell JDK 镜像

(3)运行 Dragonwell JDK 容器

(4)查看容器的状态 

(5)启动容器并进入其交互式 shell 查看 jdk 版本

五、docker 安装 nginx、nacos、redis、sentinel

(1)安装:nginx 

(2)安装:nacos

(3)安装:redis

(4)安装:sentinel

六、docker 启动 nginx、nacos、redis、sentinel

(1)启动:nginx 

(2)启动:nacos

(3)启动:redis

(4)启动:sentinel

七、部署证书到 EC2 实例

(1)证书申请 

(2)上传证书到服务器  

八、EC2 实例部署前后端代码

(1)服务器创建存放前端代码的目录 

(2)服务器创建存放后端代码的目录  

九、设置 nginx 配置文件

(1)文件路径

(2)设置配置文件 

① xxx.conf 

② xxx443.conf

(3)EC2 实例重启 nginx 服务

十、浏览器访问网站 

(1)访问:nacos 

(2)访问:Sentinel Dashboard

(3)访问:医疗管理后台系统 



一、AWS 产品类别选择

(1)应用服务器选择 

用于部署网站应用前后端代码的服务器:开发/测试/预发布/正式环境 Linux 服务器

  • 少部分用到的 Redis 缓存数据库,比如只适用于缓存 token、短信验收码接收次数这种,则无需单独设置 Redis 服务器,可以直接在应用服务器上!

『亚马逊云科技产品测评』活动征文|AWS 云服务器 EC2 实例类型及其适用场景详细说明icon-default.png?t=N7T8https://gusanshang.blog.csdn.net/article/details/134263726


(2)数据服务器选择 

用于部署数据库的服务器:MySQL、Redis ...

  • Redis 如果是大数据的缓存需要,则需要独立服务器
  • 而少部分用到的比如只适用于缓存 token、短信验收码接收次数这种,则无需单独设置 Redis 服务器,直接在上面的应用服务器部署即

『亚马逊云科技产品测评』活动征文|AWS 数据库产品类别及其适用场景详细说明icon-default.png?t=N7T8https://gusanshang.blog.csdn.net/article/details/134554322


(3)存储云盘选择

用于扩展应用存储空间,挂载在应用服务器上的存储云盘,数据盘。

『亚马逊云科技产品测评』活动征文|AWS 存储产品类别及其适用场景详细说明icon-default.png?t=N7T8https://gusanshang.blog.csdn.net/article/details/134558112



二、前置准备 

(1)域名准备、证书申请、网站备案、AWS 启动新实例、端口开放 

  1. 注册域名:由于 AWS 不提供网站备案操作,为了方便,本人使用阿里云注册域名。
  2. 申请证书:在阿里云注册域名之后,进行申请证书。
  3. 解析域名:在阿里云域名证书申请之后,使用阿里云解析域名
  4. 个人网站 ICP 备案:要在中国境内访问域名网站,必须完成网站备案,无需使用域名的,则可以不准备域名,直接使用应用服务器的公网 IP 加端口号访问即可。
  5. AWS 启动新实例:选择并购买合适的应用服务器、数据服务器、挂载存储云盘后,进入控制台启动新实例。
  6. AWS 端口开放:端口开放可以在启动新实例步骤中完成,后续也可以修改 “安全组” 添加新端口完成开放端口。

『亚马逊云科技产品测评』活动征文|AWS 域名注册、启动与连接 EC2 新实例、端口开放详细教程icon-default.png?t=N7T8https://gusanshang.blog.csdn.net/article/details/134580241

【Linux】Centos 8 服务器部署:阿里云域名注册、域名解析、个人网站 ICP 备案详细教程icon-default.png?t=N7T8https://gusanshang.blog.csdn.net/article/details/134033592

【Linux】Centos 8 服务器部署:阿里云域名申请免费 SSL 证书详细教程icon-default.png?t=N7T8https://gusanshang.blog.csdn.net/article/details/134037311

  • AWS 域名:如果无需中国境内访问网站,可以直接使用 AWS 完成域名注册、申请证书、域名解析,之后直接使用 AWS 域名,无需进行网站备案
  • 阿里云域名:网站备案是中国境内要求的,所以如果中国境内需要访问域名网站,就需要完成备案,看个人需要选择,如果是国内访问,建议使用阿里云域名,阿里云域名能完成域名注册、申请证书、网站备案、域名解析全部操作,统一快捷方便,操作简单

(2)AWS 连接实例

AWS 启动新实例后,即可连接实例 


(3)查看操作系统信息 

  1. 操作系统发行版详细信息: 
    cat /etc/os-release
  2. 当前操作系统发行版信息:
    cat /etc/system-release

CPU & 内存1 核 (vCPU) 2 GiB
操作系统Amazon Linux release 2023 (Amazon Linux)
详细信息
  • 名称 (NAME): Amazon Linux
  • 版本 (VERSION): 2023
  • ID: amzn
  • ID 类似 (ID_LIKE): fedora
  • 版本 ID (VERSION_ID): 2023
  • 平台 ID (PLATFORM_ID): platform:al2023
  • 可读名称 (PRETTY_NAME): Amazon Linux 2023
  • ANSI 色彩 (ANSI_COLOR): 0;33
  • CPE 名称 (CPE_NAME): cpe:2.3:o:amazon:amazon_linux:2023
  • 主页网址 (HOME_URL): https://aws.amazon.com/linux/
  • 错误报告网址 (BUG_REPORT_URL): https://github.com/amazonlinux/amazon-linux-2023
  • 支持截止日期 (SUPPORT_END): 2028-03-15

Linux 命令的系统版本为:Amazon Linux release 2023 (Amazon Linux) 

这个和 Centos 用到的命令不同,全部命令会有专属的一套命令,所以启动新实例时,所选的 AMI 版本十分重要,每个版本都有其对应的 Linux 命令!



三、EC2 实例安装 docker

(1)更新系统软件包 

sudo yum update -y


(2)安装 docker 所需的依赖项 

sudo amazon-linux-extras install docker


(3)启动 docker 服务并设置开机自启动

sudo systemctl enable docker.service
sudo systemctl start docker.service


(4)验证 docker 是否安装成功

sudo docker run hello-world


(5)查看已安装的 docker 版本号 

sudo docker version


(6)查找 docker 可执行文件的实际路径 

which docker

  1. Docker 的默认安装路径可以根据不同的操作系统而有所不同,通常情况下,在大多数 Linux 系统上,Docker 的可执行文件和相关文件位于 /usr/bin/docker 路径下。 
  2. Docker 的数据目录(例如镜像、容器等数据)通常位于默认的 /var/lib/docker 路径下,如果想了解 Docker 数据的存储路径,可以检查 Docker 服务的配置文件,通常在 /etc/docker/daemon.json 文件中。
  3. 如果在安装 Docker 时选择了非默认路径或使用了其他定制方法,则 Docker 的安装路径可能会有所不同。


四、EC2 实例使用 docker 安装 jdk

根据需求安装指定版本,示例需要指定安装的 jdk 版本为:Dragonwell  11


(1)查找 Docker Hub 上的 Dragonwell JDK 镜像

sudo docker pull adoptopenjdk/dragonwell:8u292_10-jdk

需要拉取的镜像为:falconia/dragonwell11


(2)拉取 Dragonwell JDK 镜像

sudo docker pull falconia/dragonwell11

注意此处创建的容器名称为:falconia/dragonwell11


(3)运行 Dragonwell JDK 容器

容器名称为:falconia/dragonwell11

容器名称重命名为:dragonwell-jdk

【命令的详细解释】

  • --name 参数指定容器的名称重命名为 dragonwell-jdk
  • -v 参数将主机文件系统上的目录挂载到容器中,以便通过容器访问本地文件系统中的文件,例如,将 /home/user/myapp 目录挂载到容器的 /myapp 目录中:
  • -d 参数指定容器在后台运行

这样,就可以使用 “/dragonwell-jdk” 作为容器名称运行 Dragonwell JDK 11 容器,并将本地目录 “/home/user/myapp” 挂载到容器的 “/myapp” 目录中。

sudo docker run --name dragonwell-jdk -v /home/user/myapp:/myapp -d falconia/dragonwell11:latest


(4)查看容器的状态 

sudo docker ps -a

列出所有容器的状态:如果 “dragonwell-jdk” 容器的状态不是 “Up”,则表示容器没有运行。 


(5)启动容器并进入其交互式 shell 查看 jdk 版本

sudo docker start -i dragonwell-jdk

可以查看到 jdk 版本号,并进入 shell 则代表安装 jdk 成功,版本号为:11.0.7.2



五、docker 安装 nginx、nacos、redis、sentinel

(1)安装:nginx 

sudo docker search nginx

需要拉取的镜像为:nginx

sudo docker pull nginx

注意此处创建的容器名称为:nginx


(2)安装:nacos

sudo docker pull nacos/nacos-server

注意此处创建的容器名称为:nacos/nacos-server


(3)安装:redis

sudo docker pull redis

注意此处创建的容器名称为:redis


(4)安装:sentinel

sudo docker pull bladex/sentinel-dashboard

注意此处创建的容器名称为:bladex/sentinel-dashboard



六、docker 启动 nginx、nacos、redis、sentinel

注意:在这之前必须先开放自定义端口,前置准备步骤中的 “端口开放” 的端口会在此步骤中应用!!!


(1)启动:nginx 

sudo docker run -p 80:80 -p 443:443 --name nginx \
-v /mydata/nginx/html:/usr/share/nginx/html \
-v /mydata/nginx/logs:/var/log/nginx  \
-v /mydata/nginx/conf:/etc/nginx/conf \
-d nginx

容器名称为:nginx

  • 运行该命令将启动一个名为 “nginx” 的容器
  • 并将容器的 HTTP 端口映射到主机的端口 80,HTTPS 端口映射到主机的端口 443
  • 在运行命令之后,能够通过主机的相应端口访问 Nginx 服务;同时,可以在宿主机上编辑网页内容、查看日志和编辑配置文件

【命令的详细解释】

  • -p 80:80 -p 443:443:将容器的端口 80 和 443 映射到主机的相应端口,可以根据需要进行端口映射的修改。
  • --name nginx:指定容器名称为 “nginx”,可根据自己的需要自定义修改名称。
  • -v /mydata/nginx/html:/usr/share/nginx/html:将宿主机上 “/mydata/nginx/html” 目录映射到容器中 Nginx 的 HTML 根目录 “/usr/share/nginx/html”,这样就可以在宿主机上编辑网页内容。
  • -v /mydata/nginx/logs:/var/log/nginx:将宿主机上 “/mydata/nginx/logs” 目录映射到容器中 Nginx 的日志目录 “/var/log/nginx”,这样就可以在宿主机上查看 Nginx 的日志。
  • -v /mydata/nginx/conf:/etc/nginx:将宿主机上 “/mydata/nginx/conf” 目录映射到容器中 Nginx 的配置目录 “/etc/nginx”,这样就可以在宿主机上编辑 Nginx 的配置文件。
  • -d nginx:使用 nginx 镜像在后台模式下运行容器。 


(2)启动:nacos

sudo docker run --name nacos -d -p 8848:8848 -p 9848:9848 -p 9849:9849 --privileged=true --restart=always -e MODE=standalone -e PREFER_HOST_MODE=hostname nacos/nacos-server

容器名称为:nacos/nacos-server

  • 运行该命令将启动 nacos/nacos-server 容器,并将容器命名为 “nacos”
  • 并将容器的端口 8848、9848 和 9849 映射到主机的相应端口
  • 在运行命令之后,能够在主机的相应端口上访问 Nacos 服务

【命令的详细解释】

  • --name nacos:指定容器名称为 “nacos”,可根据自己的需要自定义修改名称
  • -d:在后台模式下运行容器
  • -p 8848:8848 -p 9848:9848 -p 9849:9849:将容器的端口 8848、9848 和 9849 映射到主机的相应端口,可以根据需要进行端口映射的修改。
  • --privileged=true:给容器赋予特权模式,以便容器内的进程可以访问主机的部分资源。
  • --restart=always:设置容器总是在退出后自动重启。
  • -e MODE=standalone:设置 Nacos 启动模式为单机模式。
  • -e PREFER_HOST_MODE=hostname:设置容器主机名作为 Nacos 的拓扑节点名称。
  • nacos/nacos-server:基于 nacos/nacos-server 镜像的启动容器。


(3)启动:redis

sudo docker run -d -p 6379:6379 --name redis -v /mydata/redis/data:/data redis redis-server --appendonly yes --requirepass GuSanShangMiMa

sudo docker run -d -p 6379:6379 --name redis -v /mydata/redis/data:/data redis redis-server --appendonly yes --requirepass 8888

容器名称为:redis

  • 运行该命令将启动一个名为 “redis” 的容器
  • 并将容器的端口 6379 映射到主机的端口 6379
  • 注意:GuSanShangMiMa 需要替换成自己的 redis 服务器密码
  • 执行命令后,能够通过主机的端口 6379 访问 Redis 服务,并且 Redis 数据会持久化到主机上指定的目录

【命令的详细解释】

  • -d:在后台模式下运行容器。
  • -p 6379:6379:将容器的 6379 端口映射到主机的 6379 端口。
  • --name redis:指定容器名称为 "redis",可以根据自己的需求修改名称。
  • -v /mydata/redis/data:/data:将主机上的 "/mydata/redis/data" 目录映射到容器中的 "/data" 目录,这样可以在主机上持久化 Redis 的数据。
  • redis:使用 redis 镜像来运行容器。
  • redis-server --appendonly yes --requirepass GuSanShangMiMa:在容器中运行 Redis 服务器,并开启持久化功能(AOF 方式);此外,还设置了 Redis 的密码为 "GuSanShangMiMa",可以根据需要修改密码。 


(4)启动:sentinel

sudo docker run --name sentinel -d -p 8858:8858 -d bladex/sentinel-dashboard

容器名称为:bladex/sentinel-dashboard

  • 运行该命令将启动一个名为 “sentinel” 的容器
  • 并将容器的端口 8858 映射到主机的端口 8858
  • 执行命令后,能够通过主机的端口 8858 访问 Sentinel Dashboard,并监控 Sentinel 集群

【命令的详细解释】

  • --name sentinel:指定容器名称为 “sentinel”,可以根据自己的需要修改名称。
  • -d:在后台模式下运行容器,使其在后台持续运行。
  • -p 8858:8858:将容器的端口 8858 映射到主机的端口 8858,可以根据需要进行端口映射的修改。
  • bladex/sentinel-dashboard:使用 bladex/sentinel-dashboard 镜像的最新版本来运行容器,如果想使用特定的版本,可以修改为相应的镜像标签。



七、部署证书到 EC2 实例

(1)证书申请 

  1. 由于 AWS 不提供网站备案操作,为了方便,本人使用阿里云注册域名,因此域名申请证书也在阿里云域名控制台完成。
  2. 在阿里云域名平台下载证书文件,上传 EC2 服务器即可生效。

【Linux】Centos 8 服务器部署:阿里云域名申请免费 SSL 证书详细教程icon-default.png?t=N7T8https://gusanshang.blog.csdn.net/article/details/134037311


(2)上传证书到服务器  

  • 为了方便操作,这里使用远程连接工具 FinalShell 进行操作:【FinalShell】win 10 / win 11:FinalShell 远程连接 Linux 服务器icon-default.png?t=N7T8https://gusanshang.blog.csdn.net/article/details/121360151
  • 将证书上传到 linux 服务器的 Nginx 路径下:/mydata/nginx/conf/cert 



八、EC2 实例部署前后端代码

为了方便操作,这里使用远程连接工具 FinalShell 进行操作:
【FinalShell】win 10 / win 11:FinalShell 远程连接 Linux 服务器icon-default.png?t=N7T8https://gusanshang.blog.csdn.net/article/details/121360151


(1)服务器创建存放前端代码的目录 


(2)服务器创建存放后端代码的目录  



九、设置 nginx 配置文件

(1)文件路径

nginx 配置文件路径:/mydata/nginx/conf 


(2)设置配置文件 

修改 2 个证书内容,并将上传的域名证书的路径配置上: 

  • xxx.conf
  • xxx443.conf

① xxx.conf 

② xxx443.conf


(3)EC2 实例重启 nginx 服务

docker restart nginx



十、浏览器访问网站 

配置完成后,成功访问网站则代表前后端代码分离的网站已成功完成设置。 

(1)访问:nacos 

启用完成后,可以用 ESC 应用服务器 ip 加上 nacos 端口看是否支持访问:
http://服务器 ip:8848/nacos/#/login

【默认账号】

用户:nacos

密码:nacos


(2)访问:Sentinel Dashboard

启用完成后,可以用 ESC 应用服务器 ip 加上 sentinel 端口看是否支持访问:

http://服务器 ip:8858/#/login

【默认账号】

用户:sentinel

密码:sentinel


(3)访问:医疗管理后台系统 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/187815.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

浅谈现代化城市建设中智慧消防的研究与应用

安科瑞 华楠 【摘要】随着城市现代化发展,城市居住密度愈来愈大,城市建筑结构复杂多样化,高层建筑火灾发生率在不断地升高。对现代化城市面临的消防问题展开讨论,针对智慧消防在现代化城市建设中的现状进行了分析,并提…

探索 Vue 中的 bus.$emit:实现组件通信的强大工具

🤍 前端开发工程师(主业)、技术博主(副业)、已过CET6 🍨 阿珊和她的猫_CSDN个人主页 🕠 牛客高级专题作者、在牛客打造高质量专栏《前端面试必备》 🍚 蓝桥云课签约作者、已在蓝桥云…

快手AI布局:从直播电商到大模型,如何打造智能生态?

快手科技在2023年第三季度业绩中,首次披露了关于AI业务的一些重要信息,显示出其对AI的重视和投入。快手AI的核心业务和竞争优势是什么?AI的发展,对快手业绩带来了哪些方面的提振? 快手AI业务板块:直播电商…

华为云人工智能入门级开发者认证学习笔记

人工智能入门级开发者认证 人工智能定义 定义 人工智能 (Artificial Intelligence) 是研究、延伸和扩展人的智能的理论、方法、技术及应用系统的一门新的技术科学。 强人工智能 vs 弱人工智能 强人工智能:强人工智能观点认为有可能制造出真正能推理&#xff08…

【React】打包体积分析 source-map-explorer

通过分析打包体积,才能知道项目中的哪部分内容体积过大,方便知道哪些包需要进一步优化。 使用步骤 安装分析打包体积的包:npm i source-map-explorer在 package.json 中的 scripts 标签中,添加分析打包体积的命令对项目打包&…

【Java并发】聊聊创建线程池的几种方式以及实际生产如何应用

上一篇文章,主要讲述了如果通过线程池进行执行任务,以及相关的核心流程,线程执行框架本身提供了一系列的类,封装了线程创建、关闭、执行、管理等跟业务逻辑无关的代码逻辑,一方面将业务和非业务逻辑进行解耦合&#xf…

Docker简介与安装

Docker简介 1.什么是docker docker是解决了运行环境和配置问题的软件容器。是一种方便做持续集成并有助于整体发布的容器虚拟化技术。docker官网:http://www.docker.com 2.与传统虚拟技术的区别 传统虚拟机技术是虚拟出一套硬件后,在其上运行一个完整…

关于pytorch以及相关包的安装教程

一.查看自己电脑的配置 首先查看自己电脑的cuda的版本,WinR,敲入cmd打开终端 输入nvidia-smi,查看自己电脑的显卡等配置 这里要说明一下关于这个CUDA,它具有向后兼容性,这意味着支持较低版本的 CUDA 的应用程序通常也可以在较高版本的 CUD…

简单介绍一下js中的构造函数、原型对象prototype、对象原型__proto__、原型链

构造函数 function Star (uname, age){this.uname unamethis.age agethis.sing function(){ log(唱歌~) }}let xzq new Star(薛之谦, 30)let ldh new Star(刘德华, 20)log(ldh) // { uname: 刘德华, age: 20, sing: f }ldh.sing() // 唱歌~log(ldh.sing xzq.sing) // fal…

2023年c语言程序设计大赛

7-1 这是一道送分题 为了让更多的同学参与程序设计中来,这里给同学们一个送分题,让各位感受一下程序设计的魅力,并祝贺各位同学在本次比赛中取得好成绩。 注:各位同学只需将输入样例里的代码复制到右侧编译器,然后直…

【2023传智杯】第六届传智杯程序设计挑战赛AB组-ABC题解题分析详解【JavaPythonC++解题笔记】

本文仅为第六届传智杯程序设计挑战赛-题目解题分析详解的解题个人笔记,个人解题分析记录。 本文包含:第六届传智杯程序设计挑战赛题目、解题思路分析、解题代码、解题代码详解 文章目录 一.前言二.比赛题目(AB俩组)A题题目B题题目C题题目三.解题代码A题解题思路解题代码【J…

Qt 串口编程-从入门到实战

1. Qt 串口通信流程解析 1.1 串行通信和并行通信对比 并行通信适合距离较短的通信,且信号容易受干扰,成本高串口通讯-设备(蓝牙, wifi, gprs, gps) 1.2 Qt 串口通信具体流程 1. 创建 QSerial…

redis运维(二十一)redis 的扩展应用 lua(三)

一 redis 的扩展应用 lua redis加载lua脚本文件 ① 调试lua脚本 redis-cli 通过管道 --pipe 快速导入数据到redis中 ② 预加载方式 1、错误方式 2、正确方式 "案例讲解" ③ 一次性加载 执行命令: redis-cli -a 密码 --eval Lua脚本路径 key …

从程序员到解决方案工程师:一次跨界的职场冒险

在科技行业里,程序员和解决方案工程师是两个非常常见的职业。虽然这两个职业都需要一定的行业理解和问题解决能力,但它们的工作内容和职责却有很大的不同。 那么,如果一名程序员决定转行做一名解决方案工程师,他会经历怎样的体验…

03 _ 系统设计目标(一):如何提升系统性能?

提到互联网系统设计,可能听到最多的词就是“三高”,也就是“高并发”“高性能”“高可用”,它们是互联网系统架构设计永恒的主题。这里将整体探讨下高并发系统设计的目标,然后在此基础上,探讨下:如何提升系…

如何使用 WordPress搭建一个博客?详细搭建教程

域名服务器环境WordPress程序个人博客或企业官网等 前言:域名服务器是需要一些费用域名是一年服务器需要租赁3个月以上的才有备案码推荐购买一年,WordPress主题和插件有免费和付费的看自己需求 一、环境已经安装好了已经在运营项目咋就跳过从建站开始 二、进入根目录…

曲线拟合:走进数据建模中的艺术与科学

在现代科学和工程领域,曲线拟合是一项重要的数据分析技术,它可以通过数学模型来近似描述实际数据中的复杂关系。本文将详细介绍曲线拟合的基本概念、方法和应用领域,并探究其在数据建模中的艺术与科学。 第一节:曲线拟合的基本概…

IBM X3650M4安装ESXI6.5卡在/lsl_mr3.v00

环境:IBM X3650M4服务器双盘配置raid1,通过rufus制作启动U盘,安装VMware Vsphere 5.5系统 问题:卡在/lsi_mr3.v00界面无法往下运行(两台配置一样的机器遇到同样的问题) 解决方案: 直接在U盘根…

远程安全访问JumpServer:使用cpolar内网穿透搭建固定公网地址

文章目录 前言1. 安装Jump server2. 本地访问jump server3. 安装 cpolar内网穿透软件4. 配置Jump server公网访问地址5. 公网远程访问Jump server6. 固定Jump server公网地址 前言 JumpServer 是广受欢迎的开源堡垒机,是符合 4A 规范的专业运维安全审计系统。JumpS…

pop链反序列化 [MRCTF2020]Ezpop1

打开题目 网站源码为 Welcome to index.php <?php //flag is in flag.php //WTF IS THIS? //Learn From https://ctf.ieki.xyz/library/php.html#%E5%8F%8D%E5%BA%8F%E5%88%97%E5%8C%96%E9%AD%94%E6%9C%AF%E6%96%B9%E6%B3%95 //And Crack It! class Modifier {protected …