apache中URL的最大长度是多少?它在哪里记录,是否可配置?
我正在实现一个openid身份提供程序,并且想知道我遇到的局限性.我知道Internet Explorer上的2048字节路径限制.这可以使用用户代理检测特别处理.其他浏览器的URL限制要高得多.
所以我感兴趣的是编写应用程序时的apache服务器限制.
Gum*_*mbo 67
请求行长度的默认限制为8190字节(请参阅LimitRequestLine指令).如果我们为请求方法(即GET)减去三个字节,为版本信息(即HTTP/1.0/ HTTP/1.1)减去8个字节,为分隔空间减去两个字节,我们最终为URI路径加查询提供8177个字节.
lo_*_*fye 17
来自:http://www.danrigsby.com/blog/index.php/2008/06/17/rest-and-max-url-size/
官方长度根据正式的Apache文档是8,192,但很多人遇到麻烦在~4,000.
无论如何,MS Internet Explorer通常都是限制因素,因为它将最大URL大小限制为2,048.
GET 请求中允许的 URI 的默认大小为 8177 个字符。用于此类测试的 Python 中的简单代码。
#!/usr/bin/env python2
import sys
import socket
if __name__ == "__main__":
string = sys.argv[1]
buf_get = "x" * int(string)
buf_size = 1024
request = "HEAD %s HTTP/1.1\nHost:localhost\n\n" % buf_get
print "===>", request
sock_http = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
sock_http.connect(("localhost", 80))
sock_http.send(request)
while True:
print "==>", sock_http.recv(buf_size)
if not sock_http.recv(buf_size):
break
sock_http.close()
Run Code Online (Sandbox Code Playgroud)
在 8178 个字符上,您将收到这样的消息:HTTP/1.1 414 Request-URI Too Large
| 归档时间: |
|
| 查看次数: |
92847 次 |
| 最近记录: |