SpringBoot代理访问本地静态资源400 404

SpringBoot代理访问静态资源400 404

复制代码
背景:pdf文件上传到linux服务器上,使用SpringBoot代理访问

问题:访问过程中可能会出现400、404问题

前提:保证有文件,并且文件路径正确

SpringBoot如何配置静态资源代理,大家可以网上找一找,或者也可以参考我的另一篇博客
SpringBoot addResourceHandlers 代理静态资源

1、路径纯英文

此种情况目前没有遇到过问题

2、路径包含中文

此种情况可能会出现404问题

很大程度是中文乱码造成,配置一下服务器中文编码,记住配置完后重启jar,也可以参考上面提到的博客

3、路径中包含特殊字符

c 复制代码
" < > [ \ ] ^ `` { | } 

此种情况可能会出现400

在SpringBoot配置文件中添加处理特殊字符的配置,完美解决

yaml 复制代码
server:
  tomcat:
    relaxed-path-chars:
      - '['
      - ']'
    relaxed-query-chars:
      - '['
      - ']'
#  如果不配置下面的,将会从400 -> 404错误
spring:
  mvc:
    pathmatch:
      matching-strategy: ant_path_matcher

注:我是用的SpringBoot版本:2.7,版本不一定对应配置可能也不一样,大家按照实际情况设置

ps: 大家还是把问题解决在源头,上传文件时保存的文件名以及路径大家尽可能直接用数字或者字母,这样就可以最大限度的避免后面的麻烦事,毕竟咱们用的电子设备底层技术是外国滴,所以在涉及到一些账户、路径、名称等尽量用字母数字

相关推荐
皮皮林5515 分钟前
重磅!JetBrains 正式发布全新的 AI 开发工具,定名 AI IDE AIR
java·intellij idea
upp10 分钟前
[最新版本centos 10系统制作与安装]
linux·运维·centos
MX_935918 分钟前
SpringMVC请求参数
java·后端·spring·servlet·apache
zs宝来了20 分钟前
Spring Boot 自动配置原理:@EnableAutoConfiguration 的魔法
spring boot·自动配置·源码解析·enableautoconfiguration
ID_1800790547324 分钟前
小红书笔记评论 API,Python 调用示例与完整 JSON 返回参考
java·开发语言
lifewange28 分钟前
java连接Mysql数据库
java·数据库·mysql
ShineWinsu31 分钟前
对于Linux:进程优先级、进程切换以及进程调度的解析
linux·面试·笔试·进程·进程切换·进程调度·进程优先级
忆想不到的晖1 小时前
Codex 探索:别急着调 Prompt,先把工作流收住
后端·agent·ai编程
云原生指北1 小时前
命令行四件套:fd-rg-fzf-bat
java·大数据·elasticsearch
weixin_408099671 小时前
【实战对比】在线 OCR 识别 vs OCR API 接口:从个人工具到系统集成该怎么选?
图像处理·人工智能·后端·ocr·api·图片文字识别·文字识别ocr