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

相关推荐
路漫聊架构3 分钟前
Redis扫描大key利器Scan命令探秘
java·数据库·redis
qq_336313935 分钟前
java基础-IO流(打印流)
java·开发语言
墨风如雪9 分钟前
手把手教你测试VPS网络质量:详解测试IP与LookingGlass用法 (以RackNerd洛杉矶DC02为例)
后端·网络协议
我命由我1234511 分钟前
Android Jetpack Compose - enableEdgeToEdge 函数、MaterialTheme 函数、remember 函数
android·java·java-ee·kotlin·android studio·android jetpack·android-studio
tkevinjd18 分钟前
JavaIO流1
java
J_liaty18 分钟前
从入门到实战:Java Socket 实现 TCP/UDP 双协议网络通信系统(带心跳检测)
java·tcp/ip·udp
计算机学姐25 分钟前
基于SpringBoot的美妆销售系统【个性化推荐算法+数据可视化统计+库存预警+物流信息】
java·vue.js·spring boot·后端·mysql·信息可视化·mybatis
橙熟28 分钟前
一次 Druid 慢查询超时问题的源码排查
java
无限大629 分钟前
为什么"计算机网络"需要分层设计?——从物理层到应用层
后端·面试·程序员
Coder_Boy_30 分钟前
Java调用Python实现FAISS向量操作(两种方式完整实战)
java·python·faiss