Vite本地启用HTTPS需用mkcert生成可信证书并配置server.https对象;仅设https: true会因内置自签名证书触发浏览器警告。

直接在 vite.config.js 中配置 server.https 即可启用 HTTPS 开发服务器,但仅设为 true 会触发浏览器“不安全”警告——因为 Vite 内置的是自签名证书,未被系统或浏览器信任。真正可用的本地 HTTPS 需要可信证书,推荐用 mkcert 生成并集成。
安装 mkcert 并信任根证书
这是最关键的一步,必须先完成,后续所有证书才被系统和浏览器自动信任:
- macOS:运行
brew install mkcert && mkcert -install - Ubuntu/Debian:安装
libnss3-tools后执行mkcert -install - Windows:用 Chocolatey 运行
choco install mkcert && mkcert -install
执行后,mkcert 的本地根证书会被写入系统信任库,只需做一次,团队成员也需各自执行。
生成多地址兼容的开发证书
为覆盖常见访问方式,建议同时为以下地址生成证书:
立即学习“Java免费学习笔记(深入)”;
分析 Java Spring Boot 后端 Controller 代码,自动生成 Markdown 格式的接口文档。当用户说“生成 Java 接口文档”、“生成 API 文档”、“从 Spring 代码生成文档”时触发。
-
localhost(标准开发地址) -
127.0.0.1(IPv4 环回) -
::1(IPv6 环回) - 你的局域网 IP(如
192.168.1.100,方便真机调试)
命令示例:mkcert localhost 127.0.0.1 ::1 192.168.1.100
执行后生成两个文件:localhost+3.pem(证书)和 localhost+3-key.pem(私钥)。
在 vite.config.js 中加载证书
使用 Node.js 的 fs 模块读取证书文件,避免硬编码路径错误:
import { defineConfig } from 'vite'
import fs from 'fs'
export default defineConfig({
server: {
https: {
key: fs.readFileSync('./localhost+3-key.pem'),
cert: fs.readFileSync('./localhost+3.pem')
},
port: 5173,
host: true // 允许局域网访问
}
})
注意:https 字段不能是 true,否则会回落到 Vite 内置不可信证书;证书路径需相对于项目根目录,且文件权限需可读。
替代方案:使用 vite-plugin-mkcert(适合快速启动)
若不想手动管理证书文件,可用插件自动处理:
- 安装:
npm install vite-plugin-mkcert -D - 配置:
plugins: [ require('vite-plugin-mkcert')() ] - 插件会在首次启动时自动生成证书,并自动信任(仍需提前运行
mkcert -install)
该方式省去证书生成和路径配置步骤,但无法自定义域名列表,也不便于团队共享统一证书。

















