编辑模式 · 点击文字即可修改 · Ctrl+S 导出 再次按 E 或点击左上角退出
模块 2.4

第一台服务器

租一台云服务器,装上 Nginx,把第一个公网页面跑起来

零到全栈 · 李勃老师 · 2026

上一节讲的那些概念
服务器、IP、端口
这一节全部亲手体验一遍

这一节结束时,你会拥有一台属于自己的云服务器,并在浏览器里通过公网 IP 访问到你亲手修改过的网页。

SERVER vs PC

服务器和个人电脑,有四处关键不同

不同 01
有真正的公网 IP
你的电脑连上 WiFi 拿到的是内网地址(如 192.168.1.5),外面的人找不到它。服务器有公网 IP,任何人任何时候都能主动找到它——网站需要的正是这一点。
不同 02
没有屏幕、鼠标和键盘
服务器当然可以外接显示器,但人们通常不会这样做。对它的操控方式是:通过网络远程登录进去,用终端和命令来操作——这也是前面花时间学终端的原因。
不同 03
需要一直开着
你自己用的电脑用完可以关机。服务器不行——网站需要随时能被访问,所以服务器必须 24 小时不间断地运行。
不同 04
操作系统是 Linux,没有图形界面
个人电脑跑 Windows 或 macOS,有桌面和窗口。服务器领域 Linux 是绝对主流,且通常没有图形界面——只有终端。
BUY A CLOUD SERVER

在云平台上租一台云服务器

选购时抓住这几个点
  • 买的是服务器,不是对象存储、CDN 等其他产品
  • 操作系统选 Ubuntu 24.04 LTS
  • 配置从最低档开始,最便宜的就够用
  • 确认机器有公网 IP

腾讯云、阿里云、火山引擎、华为云等均可,选购买流程最顺畅、价格最优惠的那家即可。

为什么选 Ubuntu
初学者环境里最省事的选择

Linux 有很多发行版。这门课选 Ubuntu,原因只有一个:它在初学者环境里最常见,资料最多,后面的命令和安装过程最容易对齐。

版本建议选 24.04 LTS——不会太新,也绝对不旧。

参考价:阿里云双11活动价约 99 元/年,2核2G配置,已经足够完成本课程所有实践。

AFTER PURCHASE

买完以后,你会拿到三样关键信息

三样信息,缺一不可
公网 IP 地址 123.45.67.89 登录用户名 ubuntu (或 root) 登录密码 你自己设置的密码

第一次使用通常需要自己设置密码,或在云平台控制台点击"重置密码",设置后可能需要重启才能生效。

还需要确认防火墙
确保 22 端口是开放的

在云平台控制台找到防火墙(有些厂商叫"安全组"),查看已开放的端口列表,确认 TCP 22 端口是开放的。

一般情况下,22 端口默认就是开放的。至于为什么是 22——马上就会讲。

SSH

用 SSH 登录这台服务器

在你自己电脑的终端里输入
# 命令格式 ssh 用户名@服务器公网IP # 实际示例 ssh ubuntu@123.45.67.89

SSH 是登录远程 Linux 服务器的标准方式,它默认使用 22 端口——这就是为什么要确认 22 端口开放。

连接时会发生什么
  • 第一次连接:终端会问你是否信任这台机器,输入 yes 回车
  • 输入密码:屏幕上不会显示任何字符,这是正常的,盲打完按回车
  • 部分云厂商(如腾讯云)可能会发送二维码要求扫码确认,按提示操作即可
  • 登录成功后,终端提示符会变成:ubuntu@your-server:~$
FEEL IT

这一刻停下来感受一下:
你现在操控的,已经不是你眼前这台电脑,
而是网络另一端的一台 Linux 服务器

# 执行几条熟悉的命令,确认你真的在另一台机器上 pwd # → /home/ubuntu 或 /root ls # → 家目录里什么都没有(全新的机器) cd / # 进入根目录 ls # → bin boot dev etc home lib usr var ...

这个目录结构和你本地的 macOS / Windows 差别很大——因为这本来就是另一台机器,跑着另一套操作系统。"服务器就是另一台电脑",到这里不再是概念了。

INSTALL NGINX

用 apt 在服务器上安装 Nginx

Nginx 是什么,做什么
持续监听 80 端口,返回网页内容
  • 有用户请求进来时,读取对应的 html 文件,返回给浏览器
  • 记录每一次请求的日志
  • 处理多个不同网站的请求(虚拟主机)

Nginx 是目前最流行的 Web 服务器之一,部署简单,性能极好。

安装命令
# 更新软件包列表 sudo apt update # 安装 Nginx sudo apt install nginx -y # 确认 Nginx 正在运行 systemctl status nginx

看到 Active: active (running) 说明 Nginx 已经启动,正持续监听请求。sudo = 以管理员权限执行。

PORT 80 + ACCESS

开放 80 端口,用公网 IP 访问默认页面

第一步:在云平台控制台放行 80 端口
防火墙里确认 TCP 80 入站已开放

Nginx 默认监听 80 端口,但流量能不能进来,由云平台的防火墙(安全组)决定。在控制台里找到防火墙配置,添加或确认 TCP 80 端口对外开放。

这一步很多人会漏掉——浏览器打不开时,优先检查这里。

第二步:用浏览器访问
http://你的服务器公网IP

如果看到 Nginx 的默认欢迎页面,说明三件事都已确认:

  • Nginx 正在运行
  • 80 端口已经开放
  • 浏览器正在通过公网 IP 访问另一台电脑上的网页内容
THE CHAIN IS REAL NOW

上一节讲的整条链路,在这里第一次真实地发生了

浏览器
输入公网 IP,发起请求
IP 地址
定位到目标服务器
服务器
你刚才租的那台云机器
80 端口
防火墙已放行,进入
Nginx
处理请求,读取页面文件
返回内容
html 文件作为响应发出
浏览器显示
你看到的 Nginx 默认页面

这条链路在你点击回车的那一刻完成,耗时通常不到 1 秒。

FIND IT · EDIT IT · VERIFY

找到源文件,改一行内容,刷新浏览器验证

顺着 Nginx 配置找到源文件
# 查看 Nginx 配置 cat /etc/nginx/sites-available/default # 找到这一行:root /var/www/html; # 进入这个目录 cd /var/www/html ls # 看到:index.nginx-debian.html # 确认它就是默认页面的源文件 cat index.nginx-debian.html
用 Vim 改内容,刷新浏览器
sudo vim /var/www/html/index.nginx-debian.html # 进去后: # 1. 按 i 进入编辑模式 # 2. 找到最显眼的一行英文,改掉 # 3. 按 Esc 退出编辑模式 # 4. 输入 :wq 保存并退出 # 5. 按回车

保存后回到浏览器,刷新页面——如果你看到了自己写的那句话,这一节就真正完成了。

COMMON PITFALLS

最常见的四个卡点

SSH 连不上 — 依次检查:用户名是否正确(以云平台给的为准)、密码是否正确、服务器是否已启动完成、安全组是否放行了 22 端口。
浏览器打不开 IP 地址 — 优先检查:云平台安全组或防火墙是否放行了 TCP 80 端口的入站流量。这一步很多人会漏掉。
Nginx 状态不是 active (running) — 重新执行 sudo apt install nginx -y,或执行 sudo systemctl start nginx
Vim 改了文件,浏览器刷新没有变化 — 确认 Vim 真的保存成功了:是否按了 Esc,是否输入了 :wq,是否按了回车。如果不确定,重新进去改一次。
CHECKPOINT

学完这节,你应该能做到

知道服务器和个人电脑的几处关键不同
自己购买了一台云服务器,拿到了公网 IP、用户名和密码
能用 ssh 登录服务器
能在服务器上执行 pwdlscd 等熟悉的命令
能安装 Nginx,并确认它处于 active (running) 状态
能通过公网 IP 在浏览器里访问到 Nginx 默认页面
能通过 Nginx 配置找到默认页面对应的源文件
能用 Vim 修改这个文件,并在浏览器里看到变化
零到全栈

你已经在互联网上部署了第一个公网页面
这是全栈路径真正开始的地方。

接下来进入模块 3,我们开始学前端基础——真正开始写属于自己的页面。

零到全栈 · 模块 2.4 完