🐸 青蛙编程网
首页 / 开发工具 / Linux / 8. 实战:部署静态页

8. 实战:部署静态页

这是什么:一次完整的静态页部署——把前 7 章的 SSH、apt、目录、权限、服务全用上,让一个页面在公网上跑起来。

为什么用:前面每章都是零件,单独学都会,可你想让朋友访问自己的站点时,卡住的往往是怎么把它们拼起来。这一章就是那次拼装。

如何用:本章按「登录 → 装 nginx → 放 HTML → 配站点 → 启服务 → 开端口」六步走一遍,最后对照排查清单收尾。

8.1 步骤总览

SSH 进机 → apt 装nginx → 目录放 HTML → 配置 nginx 站点 → 启动服务 → 外网访问

8.2 操作序列(跟着敲)

① 登录并装 nginx

ssh -i ~/.ssh/my_key.pem root@1.2.3.4
sudo apt update && sudo apt install -y nginx

② 布置站点文件

mkdir -p /srv/mysite
nano /srv/mysite/index.html

写一段内容保存(就是 HTML 教程里那个骨架):

<!DOCTYPE html>
<html lang="zh-CN">
<head><meta charset="UTF-8" /><title>我的服务器</title></head>
<body><h1>部署成功!</h1><p>这是来自 Ubuntu 服务器的一份问候 🐸</p></body>
</html>

③ nginx 配置

sudo nano /etc/nginx/sites-available/mysite
server {
  listen 80;
  server_name 1.2.3.4;                 # 或你的域名
  root /srv/mysite;
  index index.html;
}

启用并重载:

sudo ln -s /etc/nginx/sites-available/mysite /etc/nginx/sites-enabled/
sudo nginx -t               # 语法检查(看到 ok 才 reload)
sudo systemctl reload nginx

④ 验证

curl http://localhost        # 本机

在浏览器打开 http://1.2.3.4(云服务器记得安全组放行 80——deploy 教训)。

你会看到:浏览器 renders「部署成功!」

8.3 常见问题排查清单

症状 查
浏览器 404 root 路径拼错、sites-enabled 软链没建
connection refused nginx 没跑:systemctl status
curl 本地通但外网不通 云安全组 80 未放行(最高频!)
403 Forbidden 权限不足:目录 x、文件 r(第 5 章)

8.4 一条真相:部署就是这几步的循环

以后你部署任何应用(静态、Python 后端、Docker),流程骨干不变:

  1. 代码到位(git clone / rsync / scp)
  2. 依赖安装(apt、pip、npm——第 6 章)
  3. 常驻运行(systemd / nginx——第 7 章)
  4. 端口放行(云安全组 + 防火墙)

本博客的 部署与运维 文档就是这套流程的工程级版本,回头一定看得懂。

8.5 动手改

  1. 把 index.html 改标题重新加载,不重启 nginx 就生效(静态站热更)
  2. 给 /srv/mysite 加一张图片并放 HTML 里引用
  3. 查看 tail -f /var/log/nginx/access.log,然后在浏览器刷新页面,观察日志滚动

8.6 小结

  • 一台 Ubuntu + nginx + systemctl = 你的线上网站
  • 四步论:代码 → 依赖 → 常驻 → 端口,包治部署类 90% 问题
  • 排障先本机 curl 外网心态,Security 安全组别忘检查

Linux 基础完成!下一步成为合格赛马:Git 入门 管好你的每一行代码 🐸

📥 下载本章代码

ZIP 内含本章全部代码文件与说明,解压即用,与教程内容同步生成。