纯静态站点(HTML + CSS)在宝塔上部署其实非常快,不需要 PHP、不需要数据库。这篇记录一遍完整流程,以及几个我踩过的细节。

第一步:创建站点

面板左侧「网站」→「添加站点」,关键三项:

  • 域名:填你的域名。如果想让 www 和不带 www 都能访问,两个都填进去,用换行分隔。
  • 根目录:默认 /www/wwwroot/你的域名,保持默认即可。
  • 数据库与 PHP 版本:静态站直接选「不创建」「纯静态」。选了 PHP 反而多一个无用的进程。

提交后宝塔会自动生成 Nginx 配置文件,这一步基本不会出错。

第二步:上传文件

进入站点根目录,把本地文件按原有目录结构整个传上去。用面板的「文件」页可以直接拖拽上传,目录结构必须保持一致:

/www/wwwroot/example.com/
├─ index.html
├─ login.html
├─ style.css
├─ assets/
│  └─ qq-logo.png
└─ posts/
   ├─ css-box-model.html
   └─ ...
最容易出问题的就是子目录没传。首页能打开但图片 404、点文章跳转 404,八成是 assets/posts/ 没跟着传上去。

第三步:确认默认文档

站点设置 →「默认文档」,确认 index.html 排在第一位。宝塔一般已经配好,但如果你的首页文件名不是 index,就得在这里加。

顺便检查「配置文件」里是否开启了目录列表(autoindex on)。静态站建议关掉,否则访问一个不存在的路径时,会把整个目录结构暴露出去。

第四步:开启 Gzip

站点设置 →「配置文件」,在 server 块里加上:

gzip on;
gzip_min_length 1k;
gzip_comp_level 5;
gzip_types text/plain text/css application/javascript
           application/json image/svg+xml;

CSS 和 JS 这类文本资源的压缩率通常在 60% 以上,收益很明显。注意 gzip_types不要image/pngimage/jpeg——图片本身已经是压缩格式,再压一遍纯属浪费 CPU,体积还几乎不变。

第五步:HTTPS 证书

站点设置 →「SSL」→「Let's Encrypt」,选文件验证或 DNS 验证,勾选域名后申请。几个注意点:

  • 申请前确认域名已经解析到这台服务器,且80 端口可访问,否则文件验证会失败。
  • 服务器安全组要放行 443 端口,很多人卡在这一步——证书申请成功了但网站还是打不开。
  • 建议打开右上角「强制 HTTPS」,把 HTTP 请求 301 到 HTTPS。

第六步:验证

依次检查这几项就算完成:

  1. 访问 http://域名 是否自动跳转到 HTTPS;
  2. 首页、文章详情页、图片资源分别访问一遍,确认没有 404;
  3. 浏览器 DevTools → Network,看响应头里有没有 Content-Encoding: gzip
  4. 手机模式下看一眼布局有没有错位。

小结

静态站部署的核心就三步:建站时选纯静态、上传时保持目录结构、开 Gzip 和 HTTPS。剩下的都是细节调优。整个过程十分钟内能走完,出问题优先查目录结构和端口放行。

— 全文完 —