当前位置: 首页 > news >正文

Vite 开发环境配置 HTTPS

1. 插件概述

@vitejs/plugin-basic-ssl是 Vite 官方提供的轻量级 SSL 插件,用于快速为 Vite 开发服务器启用 HTTPS 服务,无需手动配置 SSL 证书 —— 插件会自动生成并使用自签名的 SSL 证书,适用于本地开发场景(如需要 HTTPS 环境调试 PWA、支付回调、跨域等功能)。

核心特性

  • 零配置快速启用 HTTPS;
  • 自动生成 / 管理自签名 SSL 证书;
  • 兼容 Vite 2.x+ 所有版本;
  • 跨平台支持(Windows/macOS/Linux)。

2. 安装

前置条件

  • Node.js ≥ 14.18.0
  • Vite ≥ 2.0.0

安装命令

根据你的包管理器选择对应命令:

# npm npm install @vitejs/plugin-basic-ssl -D # yarn yarn add @vitejs/plugin-basic-ssl -D # pnpm pnpm add @vitejs/plugin-basic-ssl -D

3. 基本使用

3.1 Vite 配置文件(vite.config.js/ts)

在 Vite 配置文件中引入并注册插件即可启用 HTTPS:

// vite.config.ts (TypeScript 示例) import { defineConfig } from "vite"; import basicSsl from "@vitejs/plugin-basic-ssl"; export default defineConfig({ plugins: [ basicSsl(), // 注册插件,无额外配置即可启用 HTTPS ], });
// vite.config.js (JavaScript 示例) import { defineConfig } from "vite"; import basicSsl from "@vitejs/plugin-basic-ssl"; export default defineConfig({ plugins: [basicSsl()], });

3.2 启动开发服务器

启动 Vite 开发服务器后,访问地址会自动从http://localhost:5173变为https://localhost:5173

# 启动开发服务器 npm run dev

启动成功后终端会输出类似日志:

VITE v5.0.0 ready in 100 ms ➜ Local: https://localhost:5173/ ➜ Network: use --host to expose

4. 高级配置

插件支持传入可选配置项,自定义证书相关行为:

4.1 配置项说明

配置项类型默认值说明
certDirstring~/.vite-plugin-ssl证书存储目录(绝对路径 / 相对路径均可)
hostsstring[]['localhost', '127.0.0.1']证书中包含的域名 / IP(解决多域名 / IP 访问时的证书警告)

4.2 自定义配置示例

// vite.config.ts import { defineConfig } from "vite"; import basicSsl from "@vitejs/plugin-basic-ssl"; import path from "path"; export default defineConfig({ plugins: [ basicSsl({ // 自定义证书存储目录 certDir: path.resolve(__dirname, "./ssl"), // 新增自定义域名/IP(如本地测试域名、局域网IP) hosts: ["localhost", "127.0.0.1", "test.local", "192.168.1.100"], }), ], });

5. 解决浏览器证书警告

由于插件使用自签名证书,首次访问 HTTPS 地址时,浏览器会提示「您的连接不是私密连接」,需手动信任证书:

5.1 Chrome/Edge 浏览器

  1. 访问https://localhost:5173,出现警告后点击「高级」;
  2. 选择「继续访问 localhost(不安全)」(不同版本文案略有差异);
  3. (可选)长期信任:将证书添加到系统信任列表(参考下方「进阶:永久信任证书」)。

5.2 Firefox 浏览器

  1. 访问https://localhost:5173,出现警告后点击「高级」;
  2. 选择「添加例外」→「确认安全例外」。

5.3 进阶:永久信任证书

若不想每次启动都手动确认,可将插件生成的证书添加到系统信任列表:

  1. 找到证书存储目录(默认~/.vite-plugin-ssl,或自定义的certDir);
  2. 目录内包含cert.pem(证书)和key.pem(私钥);
  3. 根据系统将cert.pem添加到「受信任的根证书颁发机构」:
    • macOS:双击cert.pem→ 「钥匙串访问」→ 右键证书 → 「显示简介」→ 「信任」→ 「使用此证书时」选择「始终信任」;
    • Windows:右键cert.pem→ 「安装证书」→ 「本地计算机」→ 「将所有证书放入下列存储」→ 「受信任的根证书颁发机构」→ 完成。

6. 常见问题

Q1:启动后仍显示 HTTP 地址?

  • 检查插件是否正确注册到plugins数组中;
  • 确认 Vite 版本 ≥ 2.0.0;
  • 重启 Vite 开发服务器(修改配置后需重启)。

Q2:自定义 hosts 后访问提示证书无效?

  • 确保hosts配置包含你访问的域名 / IP;
  • 清除浏览器缓存,或重启浏览器后重试;
  • 重新生成证书:删除证书目录(如~/.vite-plugin-ssl),重启开发服务器。

Q3:证书目录权限不足?

  • 自定义certDir到项目内(如./ssl),避免系统目录权限问题;
  • 给证书目录赋予读写权限(如chmod 755 ./ssl)。

7. 注意事项

  1. 该插件仅适用于本地开发环境,生产环境需使用正规 CA 机构颁发的 SSL 证书(如 Let's Encrypt);
  2. 自签名证书无法在生产环境使用,仅用于开发调试;
  3. 若同时配置 Vite 的server.https选项,插件会覆盖该配置的默认行为;
  4. 升级插件后,若出现证书问题,可删除旧证书目录重新生成。
http://www.cnnetsun.cn/news/1782047.html

相关文章:

  • 5个强力优化技巧:用NVIDIA Profile Inspector实现显卡性能飞跃
  • 《Nat. Commun.》:共价键合金刚石/石墨烯异质界面,破解吸波材料“性能-耐久”矛盾
  • VDA5050协议深度解析:工业移动机器人通信标准的架构设计与技术实现
  • 突破性能极限:深入解析多级缓存架构设计与实践
  • 营销自动化数据驱动 - 多源数据 OLAP 架构演进趟
  • svgpath:突破SVG路径操控瓶颈的底层技术解密
  • Kazumi智能同步:跨设备追番的无缝体验解决方案
  • Translumo:打破语言障碍的实时屏幕翻译神器
  • OpenClaw(小龙虾)Windows 本地部署教程|一键安装 + 避坑指南
  • SkeyeVSS开发笔记-定时任务数据模型
  • 从客服到测试主管:我的非典型逆袭之路
  • VS Code远程开发在嵌入式环境中的实践与优化
  • 从监控盲区到业务洞察:深入解读 APMPlus 生产指标
  • 3步搞定网络资源下载:从视频号到直播流的全方位解决方案
  • 3.2《消息队列(Message Queue)从入门到精通:架构、原理与实战》
  • 长清大学城AI大模型培训公司哪家强?
  • 3大核心技术揭秘:如何通过设备ID重置免费解锁Cursor Pro完整功能
  • Qwen3.5-4B-Claude-Opus实战指南:用system prompt固化‘严谨中文推理助手’角色
  • 【ArcMap实战】从度到米:栅格数据像元单位转换与Albers投影校正全流程解析
  • 如何快速掌握B站视频下载:BilibiliDown终极使用指南
  • 圣女司幼幽-造相Z-Turbo效果对比评测:Z-Image-Turbo基模 vs LoRA微调版生成质量分析
  • Java加密实战Classfinal Java Agent解决源码加密
  • 为什么你需要XHS-Downloader:3步告别小红书内容收藏烦恼
  • PHP条形码生成高效解决方案:从集成到企业级应用全指南
  • 终极指南:如何为小米Pad 5安装完整的Windows驱动程序
  • PHP支付接口被黑的5个无声征兆:92%的金融机构仍在忽略第3个
  • foss_photo_libraries移动端功能详解:从自动上传到多平台支持的终极指南
  • VDA5050协议实战指南:智能工厂AGV通信标准化解决方案
  • 5大核心功能助力极域电子教室突破:学生自主学习技术解决方案
  • 跨设备追番不再断档:Kazumi数据同步功能如何实现无缝观影体验