请教个问题,我想要获取http请求中在请求行中的host(下面请求的reallink.com)
GET http://reallink.com/abc HTTP/1.1
Host: wronglink.com
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:45.0) Gecko/20100101 Firefox/45.0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language: zh-CN,zh;q=0.8,en-US;q=0.5,en;q=0.3
Accept-Encoding: gzip, deflate
用nginx内置变量$host
,没有获取到请求行中的host,只获取到head头中的host,请问有什么办法可以获取请求行中的host吗?
按照 @Medicean 的回答:
抓包发现测试工具果然修改了HTTP请求包:
试了下burpsuit是可以成功的!感谢各位!
应该是你所使用的那个发包的工具自己修改了 HTTP 包。使用 nc 来看一下 server 端接收到的具体的 HTTP 包是什么。
我刚试了一下 nginx 最新版本,在 BurpSuite 里面重放了一下,
$host
的值是从请求行中获取的。