mkcert
为 localhost、测试域名和本地 IP 创建受开发设备信任证书的命令行工具,可自动建立并安装本地根证书颁发机构。
mkcert 解决的本地 HTTPS 问题
自签名证书会触发浏览器警告,公网 CA 又通常无法为 localhost 或回环地址签发证书。mkcert 在开发设备创建一个本地根 CA,将其加入系统或浏览器信任库,再为指定测试名称生成证书,使本地 HTTPS 调试更接近真实环境。
根 CA 私钥是最高风险资产
本地 CA 的 rootCA-key.pem 能签发被设备信任的证书,一旦泄露可能被用于拦截安全请求。团队不应共享同一根私钥,也不能把它放入 Git、容器镜像、构建产物或公共同步目录。跨设备只复制根证书也会扩大信任范围,应有明确用途和清理计划。
mkcert 不负责服务器配置
mkcert 只生成证书材料,不会替开发服务器配置 HTTPS。证书中的名称必须与访问地址匹配,服务器需读取正确的证书与私钥。浏览器、Node.js、Java 和其他客户端使用的信任库可能不同,必须分别验证,不能通过关闭 TLS 校验绕过。
归档与维护记录
本页于 2026-08-06 根据 mkcert 1.4.4 的本地 CA、名称证书、信任库和服务器配置边界复核。归档文件为 mkcert-v1.4.4-windows-amd64.exe,适用于 Windows x64,大小为 4.67 MB。
保存到自己的网盘
打开网盘后可直接获取,也可以先保存到自己的网盘,方便换设备继续使用。
夸克网盘(无需提取码)
推荐将「mkcert」保存到该网盘
百度网盘
将「mkcert」保存到该网盘
mkcert 本地 CA 与 localhost HTTPS 配置教程
只在个人可控的开发设备上建立本地 CA,先为 localhost 生成测试证书,再手动配置开发服务器。根 CA 私钥始终留在受控设备中。
安装前准备
- 确认当前设备是开发环境而非生产服务器或最终用户设备。
- 准备需要覆盖的 localhost、测试域名和本地 IP,避免签发过宽的名称范围。
- 检查代码仓库忽略规则,确保证书私钥和本地 CA 目录不会提交或打包。
安装步骤
- 01
放置并验证可执行文件
核对 mkcert 1.4.4、Windows x64 和文件来源后放入受控工具目录,在终端查看版本和帮助。
- 02
安装本地根 CA
在理解系统信任变更后执行安装操作;如遇权限问题再使用必要的管理员权限,并记录 CA 目录位置。
- 03
生成最小范围证书
为 localhost、回环地址或明确测试域名生成证书,分别记录证书文件和私钥文件,禁止提交私钥。
快速上手
- 01
配置开发服务器
在开发服务器中分别指定生成的证书和站点私钥,监听本地接口,并重启进程加载新配置。
- 02
在浏览器验证名称
使用证书包含的同一个主机名访问,检查连接是否受信任;主机名不匹配时应重新签发,不要关闭浏览器校验。
- 03
验证非浏览器客户端
Node.js、Java 或独立运行时可能不使用同一系统根证书库,应按其信任机制单独配置,不能仅凭浏览器成功判断全部客户端可用。
使用建议
- rootCA-key.pem 的敏感度高于普通站点私钥,不得分享、提交或复制到其他设备。
- 安装根 CA 会改变设备信任边界,只在开发设备使用;团队成员应在各自设备独立创建本地 CA。
- 证书文件不会自动配置服务器,路径、主机名、端口和客户端信任均需分别验证。
故障排查与卸载方法
浏览器仍提示证书不受信任怎么办?
重启浏览器后检查本地 CA 是否安装到浏览器实际使用的信任库,并确认访问主机名包含在证书中;不要通过忽略警告作为长期方案。
浏览器正常但 Node.js 请求失败怎么办?
Node.js 可能不读取系统根证书库,应为开发进程配置额外 CA 证书并限定作用范围;不要关闭 TLS 验证。
- 移除信任并清理 CA 文件确认没有开发项目依赖后先卸载本地根 CA,再检查 CA 目录和站点私钥;需要留档时应加密离线保存,否则安全删除。
常见问题
mkcert 生成的证书可以用于正式生产网站吗?
不可以。mkcert 面向本地开发环境,证书只在安装了对应本地根 CA 的设备上受信任;公网网站应使用受浏览器信任的正式证书颁发机构。
rootCA-key.pem 为什么不能分享?
它是本地根 CA 私钥,持有者可以签发被该设备信任的证书,具备拦截安全连接的能力。不能发送给同事、上传仓库、放入镜像或同步到公共网盘。
运行 mkcert 后开发服务器会自动启用 HTTPS 吗?
不会。mkcert 负责生成证书和私钥,仍需在 Web 服务器、开发框架或代理中分别配置证书路径、私钥路径和监听地址。
下载时需要提取码吗?
夸克网盘无需提取码;百度网盘所需的四位提取码会直接显示在下载入口旁。