客户端 IP 地址是通过 CGI 变量 REMOTE_ADDR 得到的,这个是 HTTP 服务器负责提供。 HTTP 服务器和客户端浏览器之间存在 socket 连接,socket 连接信息包含了另一侧的 IP 地址和端口。当然,最终用户如果是通过代理服务器访问怎么办呢?目前主流的 HTTP 代理服务器都支持在 HTTP 报头添加 X-Forwarded-For 信息,这可以是一个列表,如果所有的代理服务器都遵循这个约定,则可以通过这个变量知道从客户端浏览器到服务端所有的代理服务器的地址。
阅读量:1
点赞量:1