本地快速启动https文件服务器
本地快速启动 HTTPS 文件服务器
在本地开发过程中,有时需要一个支持 HTTPS 的静态文件服务器。本文介绍如何使用 Caddy 和 mkcert 快速搭建一个安全的本地 HTTPS 文件服务器。
准备工作
两个核心工具:
这两个工具配合使用,可以在无需公网域名或复杂配置的情况下,快速为 localhost 启用 HTTPS。
步骤一:安装并配置本地 CA
首先,使用 mkcert 安装一个本地可信的证书颁发机构(CA):
1 | mkcert -install |
该命令会在你的系统和浏览器中安装一个本地 CA,使后续生成的证书被操作系统和浏览器信任,避免出现安全警告。
步骤二:生成本地证书
接下来,为常见的本地地址生成证书:
1 | mkcert localhost 127.0.0.1 ::1 |
执行成功后,当前目录将生成两个文件:
localhost+2.pem:证书文件localhost+2-key.pem:私钥文件
注:
+2表示证书包含两个备用名称(SANs),即127.0.0.1和::1(IPv6 回环地址)。
步骤三:配置 Caddy
创建一个名为 Caddyfile 的配置文件,内容如下:
1 | https://localhost:443 { |
此配置启用了 HTTPS 服务,监听 localhost:443,并正确设置了 HTML 文件的响应头以支持 UTF-8 编码,确保中文等字符能正常显示。
步骤四:启动服务器
保存配置后,在终端运行:
1 | caddy run |
Caddy 将根据 Caddyfile 启动 HTTPS 服务器。打开浏览器访问 https://localhost,即可查看本地文件,且连接为绿色安全状态。
总结
通过 mkcert + Caddy 的组合,我们仅需几条命令和简单配置,就能快速拥有一个支持 HTTPS 的本地文件服务器。这种方法特别适用于需要测试 HTTPS 特性、混合内容限制或安全上下文 API(如 Web Audio、Geolocation 等)的前端开发场景。
All articles on this blog are licensed under CC BY-NC-SA 4.0 unless otherwise stated.