我在 SF 上查找了与此相关的其他一些问题,它们都围绕着将最大限制设置为LimitRequestFieldSize
8K LimitRequestLine
。
httpd 的文档确认了这个限制,但是没有列出需要修复的值。
我尝试增加它,但没有用。减少它也没有用。我找到的每个来源都表明存在最大限制。
为了检查标题的长度,我发出了这个命令:
curl -v -H "CustomHeader: `printf '1%.0s' {1..n}`" hostname
我在 RHEL 6.3 VM 上安装了 apache2,并尝试了两个指令的各种值(在 中指定/etc/httpd/conf/httpd.conf
)。
作为参考,apache2的版本:
Name : httpd
Arch : x86_64
Version : 2.2.15
Release : 15.el6_2.1
现在问题是:
我知道我不能将它增加到超过 8K(Redhat 的人似乎没有触及限制),但为什么我不能减少它?无论我指定什么值,如果 n 大于 8K,apache 都会返回错误。
答案1
警告
当使用基于名称的虚拟主机时,此指令的值取自连接映射到的 NameVirtualHost 的默认(首先列出的)虚拟主机。
从这句话中无法清楚看出,如果httpd.conf
您使用基于名称的虚拟主机,是否会忽略 中的任何值。您是否使用基于名称的虚拟主机,并且是否尝试过将此指令放在第一个中?