REMOTE_HOST 是指远程客户端的主机名(如果可用),而 REMOTE_ADDR 是指远程客户端的 IP 地址。
具体区别如下:
REMOTE_HOST:是根据客户端的 IP 地址查找对应的主机名,通常通过 DNS 查询来完成。如果无法解析主机名,则会返回客户端的 IP 地址。因此,REMOTE_HOST 可能为空,或者是客户端的 IP 地址。
REMOTE_ADDR:直接返回客户端的 IP 地址,不进行主机名的解析。因此,REMOTE_ADDR 总是包含有效的 IP 地址。
总结:REMOTE_HOST 可能为空或者是客户端的主机名,REMOTE_ADDR 总是包含客户端的 IP 地址。