介绍
作品站已经运行,但仍显示示例简介。修改一个小文件,发布到服务器,对比本地编辑与实际网页的变化。
请先完成启动作品站实验。本节提供自己的新服务器、连接配置和网站代码。 每节使用独立的新环境,无需保留上一节的资源、文件或凭据。工具、连接和无关素材均已准备好。
认证考点
| 认证 | 考试任务 | 练习内容 |
|---|---|---|
| AWS Certified Cloud Practitioner (CLF-C02) | Task 3.3 | 操作 EC2 上的应用,并区分本地工作目录与远程服务器。 |
实验概览

准备个人简介
本步骤,你将修改本地简介,而远程网站仍保留原有内容。
在 AWS View 打开作品站,确认显示 Alex Morgan。本节已提供运行中的实例,让你专注于发布。
本地文件位于 LabEx 工作环境,远程文件位于 EC2 网站服务器。修改本地文件不会自动改变远程网页。
进入工作目录:
cd /home/labex/project
使用 cat 查看提供好的简介:
cat profile.json
JSON 用命名字段保存设置。name 出现在导航、关于和页脚,headline 是大字号主标题,about 是简短的辅助介绍。原简介中的 \n 表示 JSON 字符串内的换行;本节练习标题使用一行。文字放在双引号中,字段用逗号分隔。网站代码已经提供,只需修改这三个值。
cat > profile.json 将文字写入文件,而不是显示出来。<<'JSON' 读取随后的文本,直到结束行 JSON。复制整个代码块,包括两个标记行:
cat > profile.json <<'JSON'
{
"name": "Sam Rivera",
"headline": "Design with purpose.",
"about": "Brand identities and digital experiences."
}
JSON
读回文件,检查三个练习值:
cat profile.json
为了通过检查,本节使用给定内容。完成练习后可以继续探索其他简介文字。
刷新网站,仍应显示 Alex Morgan。这是预期结果:本地已修改,但尚未发布到服务器。
发布并查看主页
本步骤,你将把简介复制到服务器,并观察真实页面的新内容。
SSH 是加密的服务器连接,SCP 通过该连接复制文件。提供好的 ssh_config 选择登录密钥和连接路线,无需配置凭据或查看私钥。
website.env 保存本节的非秘密资源标识。source 将变量赋值读入当前 Terminal,显示要连接的地址:
source website.env
echo "$PUBLIC_IP"
对照 AWS View。$PUBLIC_IP 使用保存的地址,双引号让它作为一个值传入。
-F ssh_config 选择连接设置,ubuntu 是 EC2 上的用户,冒号后是远程目标路径:
scp -F ssh_config profile.json ubuntu@"$PUBLIC_IP":/home/ubuntu/portfolio/profile.json
首次连接可能提示保存了服务器主机公钥。传输显示 100% 表示文件复制完成,下面再确认应用效果。
刷新网站,应显示 Sam Rivera、Design with purpose. 和新介绍。应用每次请求都会读取简介,因此无需重启服务。

SSH 地址后附加命令,会在服务器上执行它,再返回 LabEx 提示符。读取远程文件:
ssh -F ssh_config ubuntu@"$PUBLIC_IP" cat /home/ubuntu/portfolio/profile.json
它应与本地简介相同。这样既确认了复制结果,也确认了该文件驱动的页面。
如果仍显示旧名称,检查传输是否完成、地址是否与 AWS View 相同、目标路径是否正确,并刷新当前实验的网站。在其他目录创建文件不会发布主页。
清理网站服务器
本步骤,你将在确认发布成功后移除一次性实例。
website.env 也提供了 INSTANCE_ID。显示并对照 AWS View:
echo "$INSTANCE_ID"
只终止该实例:
aws ec2 terminate-instances --instance-ids "$INSTANCE_ID"
等待终止完成:
aws ec2 wait instance-terminated --instance-ids "$INSTANCE_ID"
AWS View 应显示 terminated,刷新网站应提示不再运行。保留网络和登录密钥,下一节会独立提供网站来练习访问规则。
总结
你修改本地 JSON 简介,通过 SCP 发布到 EC2,确认实际页面显示新内容,并通过 SSH 读取远程文件。文件复制完成与应用实际呈现是两个需要分别确认的结果。最后终止了服务器。
官方参考:SSH 连接 Linux 实例、向实例传输文件。



