Http请求URL长度限制[通俗易懂]

Http请求URL长度限制[通俗易懂]http1.1协议原文http1.1协议中对url的长度是不受限制的,协议原文://https://www.ietf.org/rfc/rfc2616.txt3.2.1GeneralSyntax TheHTTPprotocoldoesnotplaceanyapriorilimitonthelengthofaURI.ServersM…

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

http 1.1 协议原文

http 1.1 协议中对url的长度是不受限制的,协议原文:

// https://www.ietf.org/rfc/rfc2616.txt 
3.2.1 General Syntax
	   The HTTP protocol does not place any a priori limit on the length of
   a URI. Servers MUST be able to handle the URI of any resource they
   serve, and SHOULD be able to handle URIs of unbounded length if they
   provide GET-based forms that could generate such URIs. A server
   SHOULD return 414 (Request-URI Too Long) status if a URI is longer
   than the server can handle (see section 10.4.15).

      Note: Servers ought to be cautious about depending on URI lengths
      above 255 bytes, because some older client or proxy
      implementations might not properly support these lengths.

翻译:

     HTTP协议不对URI的长度作事先的限制,服务器必须能够处理任何他们提供资源的URI,并且应该能够处理无限长度的URIs,这种无效长度的URL可能会在客户端以基于GET方式的请求时产生。如果服务器不能处理太长的URI的时候,服务器应该返回414状态码(此状态码代表Request-URI太长)。

    注:服务器在依赖大于255字节的URI时应谨慎,因为一些旧的客户或代理实现可能不支持这些长度。
协议中未明确对url进行长度限制,但在真正实现中,url的长度还是受到限制的,一是服务器端的限制,二就是浏览器端的限制。

长度限制

服务器端

  • nginx
    nginx服务器默认的限制是4K或者8K
    设置参数:large_client_header_buffers

浏览器端

浏览器 最大长度(字符数) 备注
Internet Explorer 2083 如果超过这个数字,提交按钮没有任何反应
Firefox 65,536
chrome 8182
Safari 80,000
Opera 190,000
curl(linux下指令) 8167

Reference

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/172528.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • el-table自适应宽度_表格自适应大小

    el-table自适应宽度_表格自适应大小不要设置width=”110px”<el-table-columnprop=”login_id”align=”center”label=”工号”></el-table-column><el-table-columnprop=”login_id”width=”110px”align=”center”label=”工号…

    2022年9月7日
    0
  • Laravel渴求式加载(比较容易理解理解load与with关系)

    Laravel渴求式加载(比较容易理解理解load与with关系)

    2021年11月8日
    41
  • linux 重启服务器命令[通俗易懂]

    linux 重启服务器命令[通俗易懂]Linux有如下的关机和重启命令:shutdown,reboot,halt,poweroff,那么它们有什么区别呢?shutdown-建议使用的命令shutdown是最常用也是最安全的关机和重启命令,它会在关机之前调用fsck检查磁盘,其中-h和-r是最常用的参数:-h:停止系统服务并关机-r:停止系统服务后重启下面看几个例子:shutdown-h…

    2022年10月18日
    0
  • Linux服务器磁盘挂载

    Linux服务器磁盘挂载linux服务器磁盘挂载操作具体操作是:先对磁盘进行格式化,格式化后挂载到需要的挂载点,最后添加分区启动表,以便下次系统启动随机自动挂载。1、首先查看系统中磁盘信息,命令为:fdisk-l;2、找到未使用的磁盘,对其进行格式化。(操作数据盘符前,请自行确认磁盘是否有使用过,如有重要数据请谨慎操作,以免导致数据丢失,带来不必要的麻烦)。格式化命令为:mkfs.exte/dev/vdb;3、对格式化完成的磁盘进行挂载挂载前,先在服务器上创建一个需要挂载的挂载点,例如可

    2022年6月20日
    28
  • php curl header设置参数[通俗易懂]

    php curl header设置参数[通俗易懂]header中的三种方式$header=array(‘Content-type:application/x-www-form-urlencoded;charset=UTF-8’);$header=array(‘Content-type:application/json;charset=UTF-8’);$header=array(‘Accept:application/json…

    2022年7月27日
    66
  • linux下修改docker容器RabbitMQ端口映射(修改RabbitMQ默认端口)

    linux下修改docker容器RabbitMQ端口映射(修改RabbitMQ默认端口)1.xshell执行以下命令获取docker容器IDdockerps-a2.修改/var/lib/docker/containers/{容器ID+一些字符串}/hostconfig.json中”PortBindings”:{“容器端口/tcp”:[{“HostIp”:””,”HostPort”:”改成你要改的端口”}]3.修改并上传配置文件后执行以下代码sy…

    2025年7月14日
    1

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号