Surge 是一个强大的静态网站生成器,适用于快速构建和部署个人博客、项目展示页面或静态网站,以下是使用 Surge 的详细配置教程:
安装 Surge
确保你已经安装了 Surge CLI,可以通过以下命令安装:
npm install -g surge
初始化 Surge 配置文件
创建一个 surge.yaml 文件,位于项目根目录下,文件结构如下:
version: 1.. # 项目版本号(可选)
description: Your Project Name # 项目名称
source:
directory: dist # 构建后的文件目录
url: https://github.com/yourusername/yourrepo.git # 代码仓库地址
build:
from: git
path: build
cache: 1h
clean: true
route:
- source: / # 输入路径
to: /index.html # 输出路径
- source: /about
to: /about.html
mirror: # 如果需要多镜像(如多环境部署)
- domain: yourdomain.com
https: true
port: 443
- domain: testdomain.com
https: false
port: 80
ignore: # 忽略不需要处理的文件或目录
- file: *.txt
- dir: .git
填写配置信息
version:项目版本号(可选)。description:项目名称和简介。source:directory:构建后的文件目录,通常为dist。url:代码仓库地址,如 GitHub、GitLab 等。
build:from:使用 Git、Docker 或 Pipeline 克隆代码。path:构建输出路径。cache:构建缓存时间(默认 1h)。clean:构建完成后清理旧构建文件(默认 true)。
route:配置路由规则。source:输入路径。to:输出路径。
mirror:配置多镜像(如部署到不同环境)。domain:指定域名。https:是否启用 HTTPS。port:指定端口,默认为 80 和 443。
ignore:忽略特定文件或目录。
初始化和发布
在项目根目录下运行以下命令:
surge init
初始化完成后,运行:
surge push
Surge 会读取 surge.yaml,构建并推送到指定的镜像,构建后的文件会出现在 dist 目录下。
测试和调试
- 构建日志:如果构建失败,可以查看构建日志,使用
surge build --verbose获取详细信息。 - 本地测试:使用
surge serve启动本地服务器,访问http://localhost:800查看构建结果。 - 路由测试:确保
route配置正确,输入路径和输出路径一致,避免 404 错误。
使用 Mirror 配多环境部署
在 mirror 部分添加多个配置,分别对应不同环境:
mirror:
- domain: production.com
https: true
port: 443
- domain: test.com
https: false
port: 80
每次发布时指定镜像,
surge push --mirror production.com
其他配置
extra:添加启动脚本或环境变量。extra: - name: NODE_ENV value: productionsecret:敏感信息配置。secret: key: value
部署后维护
- 更新代码:修改
dist目录下的文件后,运行surge push重新部署。 - 域名解析:确保域名解析正确,可能需要设置 DNS 解决方案。
- 监控和维护:使用工具如 Cloudflare Worker 或 Netlify 进行监控和自动化部署。
通过以上配置,Surge 能够高效地构建和部署静态网站,满足多种项目需求,遇到问题时,可参考 Surge 的官方文档或社区求助。









