php REMOTE_ADDR之获取访客IP的代码


Posted in PHP onApril 22, 2008

<?php
$iipp=$_SERVER["REMOTE_ADDR"];
echo $iipp;
?>[/code][code]<?php
$user_IP = ($_SERVER["HTTP_VIA"]) ? $_SERVER["HTTP_X_FORWARDED_FOR"] : $_SERVER["REMOTE_ADDR"];
$user_IP = ($user_IP) ? $user_IP : $_SERVER["REMOTE_ADDR"];

echo $user_IP;
?>

<?php
function get_real_ip(){
$ip=false;
if(!empty($_SERVER["HTTP_CLIENT_IP"])){
$ip = $_SERVER["HTTP_CLIENT_IP"];
}
if (!empty($_SERVER['HTTP_X_FORWARDED_FOR'])) {
$ips = explode (", ", $_SERVER['HTTP_X_FORWARDED_FOR']);
if ($ip) { array_unshift($ips, $ip); $ip = FALSE; }
for ($i = 0; $i < count($ips); $i++) {
if (!eregi ("^(10|172.16|192.168).", $ips[$i])) {
$ip = $ips[$i];
break;
}
}
}
return ($ip ? $ip : $_SERVER['REMOTE_ADDR']);
}

echo get_real_ip();
?>

<?php
if ($HTTP_SERVER_VARS["HTTP_X_FORWARDED_FOR"])
{
$ip = $HTTP_SERVER_VARS["HTTP_X_FORWARDED_FOR"];
}
elseif ($HTTP_SERVER_VARS["HTTP_CLIENT_IP"])
{
$ip = $HTTP_SERVER_VARS["HTTP_CLIENT_IP"];
}
elseif ($HTTP_SERVER_VARS["REMOTE_ADDR"])
{
$ip = $HTTP_SERVER_VARS["REMOTE_ADDR"];
}
elseif (getenv("HTTP_X_FORWARDED_FOR"))
{
$ip = getenv("HTTP_X_FORWARDED_FOR");
}
elseif (getenv("HTTP_CLIENT_IP"))
{
$ip = getenv("HTTP_CLIENT_IP");
}
elseif (getenv("REMOTE_ADDR"))
{
$ip = getenv("REMOTE_ADDR");
}
else
{
$ip = "Unknown";
}
echo "你的IP:".$ip ;
?>

<?php
if(getenv('HTTP_CLIENT_IP')) {
$onlineip = getenv('HTTP_CLIENT_IP');
} elseif(getenv('HTTP_X_FORWARDED_FOR')) {
$onlineip = getenv('HTTP_X_FORWARDED_FOR');
} elseif(getenv('REMOTE_ADDR')) {
$onlineip = getenv('REMOTE_ADDR');
} else {
$onlineip = $HTTP_SERVER_VARS['REMOTE_ADDR'];
}
echo $onlineip;
?>

PHP 相关文章推荐
php下MYSQL limit的优化
Jan 10 PHP
PHP 写文本日志实现代码
May 18 PHP
PHP图片上传代码
Nov 04 PHP
ThinkPHP Mobile使用方法简明教程
Jun 18 PHP
Zend Framework教程之路由功能Zend_Controller_Router详解
Mar 07 PHP
php模板引擎技术简单实现
Mar 15 PHP
PHP模板引擎Smarty自定义变量调解器用法
Apr 11 PHP
微信网页授权(OAuth2.0) PHP 源码简单实现
Aug 29 PHP
完美解决phpexcel导出到xls文件出现乱码的问题
Oct 29 PHP
利用PHPStorm如何开发Laravel应用详解
Aug 30 PHP
laravel unique验证、确认密码confirmed验证以及密码修改验证的方法
Oct 16 PHP
php多进程并发编程防止出现僵尸进程的方法分析
Feb 28 PHP
Gregarius中文日期格式问题解决办法
Apr 22 #PHP
PHP下用rmdir实现删除目录的三种方法小结
Apr 20 #PHP
Mysql中limit的用法方法详解与注意事项
Apr 19 #PHP
php采集速度探究总结(原创)
Apr 18 #PHP
Snoopy类使用小例子
Apr 15 #PHP
mysql 中InnoDB和MyISAM的区别分析小结
Apr 15 #PHP
snoopy PHP版的网络客户端提供本地下载
Apr 15 #PHP
You might like
用libTemplate实现静态网页的生成
2006/10/09 PHP
php whois查询API制作方法
2011/06/23 PHP
php数组冒泡排序算法实例
2016/05/06 PHP
mac系统下为 php 添加 pcntl 扩展
2016/08/28 PHP
PHP4和PHP5版本下解析XML文档的操作方法实例分析
2017/05/20 PHP
可在线编辑网页文字效果代码(单击)
2013/03/02 Javascript
iframe子父页面调用js函数示例
2013/11/07 Javascript
Jquery在指定DIV加载HTML示例代码
2014/02/17 Javascript
JavaScript版的TwoQueues缓存模型
2014/12/29 Javascript
JQuery radio(单选按钮)操作方法汇总
2015/04/15 Javascript
javascript定义类和类的实现实例详解
2015/12/01 Javascript
jQuery实现form表单元素序列化为json对象的方法
2015/12/09 Javascript
jQuery代码实现图片墙自动+手动淡入淡出切换效果
2016/05/09 Javascript
jQuery中的一些小技巧
2017/01/18 Javascript
详解基于webpack搭建react运行环境
2017/06/01 Javascript
深究AngularJS中$sce的使用
2017/06/12 Javascript
原生js封装添加class,删除class的实例
2017/11/06 Javascript
关于React动态加载路由处理的相关问题
2019/01/07 Javascript
nodejs一个简单的文件服务器的创建方法
2019/09/13 NodeJs
vue vantUI实现文件(图片、文档、视频、音频)上传(多文件)
2019/10/15 Javascript
jQuery 移除事件的方法
2020/06/20 jQuery
Vue实现图书管理案例
2021/01/20 Vue.js
Python使用redis pool的一种单例实现方式
2016/04/16 Python
PyChar学习教程之自定义文件与代码模板详解
2017/07/17 Python
Django CSRF跨站请求伪造防护过程解析
2019/07/31 Python
python连接PostgreSQL数据库的过程详解
2019/09/18 Python
django实现web接口 python3模拟Post请求方式
2019/11/19 Python
python 实现线程之间的通信示例
2020/02/14 Python
浅谈Django QuerySet对象(模型.objects)的常用方法
2020/03/28 Python
pandas实现导出数据的四种方式
2020/12/13 Python
css3中flex布局宽度不生效的解决
2020/12/09 HTML / CSS
html5 canvas移动浏览器上实现图片压缩上传
2016/03/11 HTML / CSS
创业计划书——互联网商机
2014/01/12 职场文书
舞蹈教育学专业自荐信
2014/06/15 职场文书
导师工作推荐信
2015/03/27 职场文书
浅谈如何提高PHP代码质量之单元测试
2021/05/28 PHP