如何实现网站限制访问

shuangwen163 2013-01-10 09:32:11
大家好!
我想限制国内ip访问我的网站可以行得通吗?
如果是国内ip访问的话就提示需要输入密码才能进入浏览;
非国内ip访问就不需要输入密码直接进入浏览;
这样可以实现吗用php?
...全文
557 16 打赏 收藏 转发到动态 举报
写回复
用AI写文章
16 条回复
切换为时间正序
请发表友善的回复…
发表回复
tqq_tutu 2013-01-17
  • 打赏
  • 举报
回复
可以啊,可以设置IP段,JS很方便
hello_code_com 2013-01-15
  • 打赏
  • 举报
回复
根据IP段来限制可以在一定程度上满足你的需求,但是这种方式不是很准确,因为很多人可能通过代理来实现
www_7di_net 2013-01-14
  • 打赏
  • 举报
回复
如果服务器是你自己的话就比较简单了,windows服务器可以在管理工具里的本地安全策略里拒绝某个ip段,而linux更简单,只需要设置一下防火墙就行了.
  • 打赏
  • 举报
回复
知道为什么了,因为在本地 - -!
  • 打赏
  • 举报
回复
GeoIP 这个我试了怎么没有显示国家?除了时间都是空的!
lmsskycn 2013-01-12
  • 打赏
  • 举报
回复
其实可以判断浏览器语言来解决,,外国人很少有中文浏览器吧····
shuangwen163 2013-01-11
  • 打赏
  • 举报
回复
已找到方法: GeoIP PHP实现案例 GeoIP数据库是广泛使用的商业IP数据库,GeoIP数据库免费版提供国家代码的信息,也就是说能够精确到IP地址所在地国家,如果你要更精确的IP地址定位,那么你需要购买更高版本。 这里给出一个GeoIP Lite版本的下载地址和简单应用。 GeoIP 数据库文件下载: http://geolite.maxmind.com/download/geoip/database/GeoLiteCountry/GeoIP.... GeoIP的PHP API文件打包下载地址: http://geolite.maxmind.com/download/geoip/api/php/php-1.11.tar.gz GeoIP查询PHP脚本: 下面的代码能够给出访问者IP的国家代码与国家名称 <?php //计时开始 function utime() { $time = explode( " ", microtime() ); $usec = (double)$time[0]; $sec = (double)$time[1]; return $usec + $sec; } $startTimes = utime(); include("geoip.inc"); // open the geoip database $gi = geoip_open("GeoIP.dat",GEOIP_STANDARD); // 获取国家代码 $country_code = geoip_country_code_by_addr($gi, $_SERVER['REMOTE_ADDR']); echo "Your country code is: <strong>$country_code</strong> <br />"; // 获取国家名称 $country_name = geoip_country_name_by_addr($gi, $_SERVER['REMOTE_ADDR']); echo "Your country name is: <strong>$country_name</strong> <br />"; // close the database geoip_close($gi); //运行结束时间 $endTimes = utime(); $runTimes = sprintf( '%0.4f', ( $endTimes - $startTimes ) ); echo "Processed in " . $runTimes . "second."; ?>
shuangwen163 2013-01-10
  • 打赏
  • 举报
回复
引用 5 楼 congdu1989 的回复:
apache是否可以设置 不同的ip段访问不同的页面呢?
这个确实也可以考虑下!
erate 2013-01-10
  • 打赏
  • 举报
回复
apache是否可以设置 不同的ip段访问不同的页面呢?
www_7di_net 2013-01-10
  • 打赏
  • 举报
回复
是,discuz就這麼做的
shuangwen163 2013-01-10
  • 打赏
  • 举报
回复
两位的意思综合起来: 1、查找国内的ip段 2、获取当前访问的用户主机(ip地址)与国内ip比较进行条件判断处理是吗?
erate 2013-01-10
  • 打赏
  • 举报
回复
在入口文件中 通过$_SERVER['REMOTE_HOST'](正在浏览当前页面用户的主机名),获取客户端ip进行过滤。
十一文 2013-01-10
  • 打赏
  • 举报
回复
可以 查查国内的ip段就是 但是这个并不一定准确,因为有人会用多层代理
shuangwen163 2013-01-10
  • 打赏
  • 举报
回复
各位,还有木有其它好点的方法推荐呢?

20,359

社区成员

发帖
与我相关
我的任务
社区描述
“超文本预处理器”,是在服务器端执行的脚本语言,尤其适用于Web开发并可嵌入HTML中。PHP语法利用了C、Java和Perl,该语言的主要目标是允许web开发人员快速编写动态网页。
phpphpstorm 技术论坛(原bbs)
社区管理员
  • 开源资源社区
  • phpstory
  • xuzuning
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧