vue3配置caddy作为静态服务器,在浏览器地址栏刷新出现404

vue3配置caddy作为静态服务器,在浏览器地址栏刷新出现404

  • [1 情况描述](#1 情况描述)
  • [2 原因](#2 原因)
  • [3 配置](#3 配置)

1 情况描述

在vue打包之后,形成dist文件,采用caddy作为静态资源服务器。在浏览器中输入域名时可以访问网站,但是,进过路由导航栏内部的跳转之后,想要在浏览器中刷新资源,发现浏览器出现404。

2 原因

这个主要是vue的历史记录模式导致的。

由于我们的应用是一个单页的客户端应用,如果没有适当的服务器配置,用户在浏览器中直接访问 https://example.com/user/id,就会得到一个 404 错误。

这是因为单页的客户端应用中,所有资源请求都是通过打包后的index.html作为入口进行处理的。这时如果只是通过配置的根目录进行访问,那肯定找不到。

这时应该将没有找到的路由全部指向index.html中。

3 配置

handle 的使用,可以有效的隔离不同的请求,防止后端的请求被错误的判断为前端的请求。

复制代码
example.com {

	handle /api/* {
		reverse proxy localhost:9911
	}
	handle {
		root * /home/www/dist
		encode zstd gzip
		file_server
		try_files {path} /
	}
}

https://router.vuejs.org/zh/guide/essentials/history-mode.html#Caddy-v2

相关推荐
kyriewen1 小时前
我把 10 道面试题答案真跑了一遍:6 道是错的
前端·javascript·面试
WebInfra2 小时前
Rspack 2.3 发布:联手 SWC 团队带来全新编译器
前端·javascript·github
云宏信息3 小时前
超融合和存算分离怎么选?从性能、可靠性、扩展、成本四个维度讲述如何精准匹配架构选型 | 附企业降本轻量云方案
运维·服务器·架构·云计算
FRing033 小时前
JavaScript入门到精通三十一(原型继承、原型链)
开发语言·前端·javascript
咸鱼梦想家π3 小时前
Linux开发工具(下)
linux·运维·服务器
程序员大阳4 小时前
副队长JavaScript教程(52)-DOM操作元素的内容
javascript·dom·innertext·innerhtml·value·内容操作
云飞云共享云桌面5 小时前
机械制造研发部门:一台SolidWorks云主机替代 10 台传统图形工作站
运维·服务器·网络·3d·自动化·制造
裕波5 小时前
苏千|从 cnpm 到 Vite+:AI 时代的开发者体验演进
javascript
j7~5 小时前
【ProtoBuf】(篇一)初识 ProtoBuf
运维·服务器·序列化·protobuf·protobuf的适用特点
console.log('npc')5 小时前
周期任务功能完整实现:CRON 编辑器 + 模板变量 + 执行历史
javascript·vue.js·编辑器