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

相关推荐
红豆子不相思4 分钟前
virual serve
linux·运维·服务器
SuperEugene4 分钟前
常见设计模式在 JS 里的轻量用法:单例、发布订阅、策略
前端·javascript·设计模式·面试
二十画~书生6 分钟前
【2025年全国大学生电子设计大赛-国二】超声信标定位系统 (J 题)
开发语言·javascript·经验分享·ecmascript·硬件工程
江畔何人初12 分钟前
MySQL 服务器进程的三层结构
linux·运维·服务器·云原生·mysal
YYDataV数据可视化15 分钟前
【P2P音视频通信系统】之信令服务器详解
服务器·音视频·p2p·信令服务器
坐吃山猪16 分钟前
Neo4j02_CQL语句使用
运维·服务器·数据库
白太岁20 分钟前
C++:(6) 常用 linux 命令:进程管理、日志查看、网络端口与文件权限
linux·运维·服务器
前端 贾公子20 分钟前
vue3 组件库的设计和实现原理 (下)
前端·javascript·vue.js
西安同步高经理22 分钟前
便携式小型1588主时钟源用途及解决方案,1588时钟服务器,1588v2时钟
运维·服务器
竟未曾年少轻狂23 分钟前
JavaScript 对象与数组
java·前端·javascript·数组·对象