我需要在 Request.ServerVariables 集合中设置 HTTP_X_FORWARDED_FOR 值。我正在尝试使用 Fiddler (请参阅本文 https://stackoverflow.com/questions/3211854/how-to-set-value-for-http-x-forwarded-for-manually).
所以我设置了一个自定义 HTTP 请求:
GET http://myhost/ HTTP/1.1 http_x_forwarded_for: my.fake.ip.1, my.fake.ip.2 Host: myhost.
请求正确执行。
但是当我调试代码时,Request.ServerVariables("HTTP_X_FORWARDED_FOR") 是空的。
我哪里错了?
Fiddler 是正确的工具吗?
您发送的标头应该是x-forwarded-for
. The Request.ServerVariables
正是它所说的服务器变量。它不仅仅包含请求中发送的 http 标头。
将标头值放入服务器变量时,IIS 会为该变量创建一个名称,即based在标题名称上,但不是逐字名称。它将所有字符转换为大写,替换所有-
with _
并添加前缀HTTP_
to header name 创建服务器变量名。添加前缀是为了防止任意标头对其他固定服务器变量名称进行别名。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)