这个错误码感觉挺神奇的,很少有听过这个错误。记录下几个排查的步骤。

简单介绍下这个错误的说明:
Request Header Fields Too Large (请求头字段太大)

某些情况下,客户端发送 HTTP 请求头会变得很大,那么服务器可发送 431 Request Header Fields Too Large 来指明该问题。

正文

先来说一下我解决的方案:
域名问题:
修改前端vue.config.js

proxy: {
	target : `http://127.0.0.1:8080`
}

域名后面需要增加端口号,端口号根据服务来自己改。
因为大部分项目是通过nginx代理了,所以线上的服务器是不需要。本地根据自己的需要修改。

如果这个没有问题,下面是其他方法:

方案一

在SpringBoot项目中找到yml文件

server:
  port: 8090
  tomcat:
    max-swallow-size: -1
  max-http-header-size: 2MB

在后面追加max-http-header-size,注意是在server下面,不是tomcat。

方案二

排查Nginx配置文件:nginx.conf

http {
    include       mime.types;
    default_type  application/octet-stream;

    #log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
    #                  '$status $body_bytes_sent "$http_referer" '
    #                  '"$http_user_agent" "$http_x_forwarded_for"';

    #access_log  logs/access.log  main;
    
    client_header_buffer_size 10240k;
    large_client_header_buffers 6 10240k; 

}

检查最后两行代码,看是否存在,加上就可以。

方案三

前端vue.config.js注意代理问题

pathRewrite: {
  ['^' + process.env.VUE_APP_BASE_API]: ''
}

检查反斜杠

方案四

清空浏览器的cookie缓存重新加载。

以上就是这个问题的解决方法。如果有补充的希望大家评论告知。

补充一点,这个错误后端会报:
druid的错误,大家可以修改版本号为:1.2.1 来尝试解决。

以上就是http errorcode 431的错误,如果有不对的地方或者更好的建议还希望各位大佬指教。感谢观看大家观看。

Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐