php中获取远程客户端的真实ip地址的方法

yipeiwu_com6年前PHP代码库
(1).REMOTE_ADDR:浏览当前页面的用户计算机的ip地址

(2).HTTP_X_FORWARDED_FOR: 浏览当前页面的用户计算机的网关

(3).HTTP_CLIENT_IP:客户端的ip

在PHP 中使用 $_SERVER["REMOTE_ADDR"] 来取得客户端的 IP 地址,但如果客户端是使用代理服务器来访问,那取到的就是代理服务器的 IP 地址,而不是真正的客户端 IP 地址。要想透过代理服务器取得客户端的真实 IP 地址,就要使用 $_SERVER["HTTP_X_FORWARDED_FOR"] 来读取。

不过要注意的事,并不是每个代理服务器都能用 $_SERVER["HTTP_X_FORWARDED_FOR"] 来读取客户端的真实 IP,有些用此方法读取到的仍然是代理服务器的 IP。

还有一点需要注意的是:如果客户端没有通过代理服务器来访问,那么用$_SERVER["HTTP_X_FORWARDED_FOR"] 取到的值将是空的。

相关文章

PHP上传文件时文件过大$_FILES为空的解决方法

在做图片上传的时候突然发现一张gif图片上传失败 size为0,实际大小为4.66M。上传小文件时可以,传大文件就不行,看了下PHP.INI里面upload_max_filesize =...

PHP整合七牛实现上传文件

七牛支持抓取远程图片 API,用 access_key + secret_key + url 生成 access_token, 把 access_token 加在 header 里,然后...

PHP include_path设置技巧分享

PHP include_path设置技巧分享

1.include_path的意义 当时候函数include(),require(),fopen_with_path()函数来寻找文件时候.在不设置include_path的情况下,这些...

php5.5使用PHPMailer-5.2发送邮件的完整步骤

前言 这几天一直被邮件发送功能搞得头大,作为一个小白,遇到坑总是难免的。今天终于把phpmailer搞定了,下面就来总结一下 PHPMailer - A full-featured em...

PHP 采集心得技巧

1.获取远程文件源代码(file_get_contents或用fopen). 2.分析代码得到自己想要的内容(这里用正规匹配,一般是得到分页)。 3.跟根得到的内容进行下载入库等操作。...