.::: 一路问情 :::.
  • 注册
  • 登录
  • 会员
  • 生存游戏
  • FTP资源中心
  • 七海争霸
  • 社区设施
  • 帮助
.::: 一路问情 :::. » 『建站技术』 » PHP实现禁止网外链接网址的方式查看网页
‹‹ 上一主题 | 下一主题 ››
发新话题
  • 发新话题
  • 发布投票
  • 发布商品
  • 发布悬赏
  • 发布活动
  • 发布辩论
  • 发布视频
打印

[技术] PHP实现禁止网外链接网址的方式查看网页

ivanisme
看贴不回的后果

初级会员

帖子
83 
威望
30 点 
金钱
201 元 
好评
0 点 
  • 个人空间
  • 发短消息
  • 加为好友
  • 当前离线
1楼 大 中 小 发表于 2008-2-26 16:58  只看该作者

PHP实现禁止网外链接网址的方式查看网页

// 禁止网外链接(例如搜索引擎)查看网页内容

if(!empty($_SERVER['HTTP_REFERER']))
{
preg_match("/^(http:\/\/)?([^\/]+)/i",$_SERVER['HTTP_REFERER'], $matches);
$host = $matches[2];
if(($host=="211.152.50.35")||($host==www.phpv.net))
{
}
else
{
header("Location:http://www.phpv.net");
exit;
}
}
// 禁止直接输入网址查看网页内容
else
{
header("Location:http://www.phpv.net");
exit;
}



只有点击超链接(即<A href=...>) 打开的页面才有HTTP_REFERER环境变量, 其它如 window.open()、 window.location=...、window.showModelessDialog()等打开的窗口都没有HTTP_REFERER 环境变量; 这样的限制会使网站少很多活性。当然啦,鱼与熊掌不可兼得,呵呵。

这样写是不是更简洁些?
if(($host!="211.152.50.35")&&($host!=www.phpv.net)){
header("Location:http://www.phpv.net");
exit;
}



QQ
UID
73836 
精华
0 
积分
30 
钻石
0 克拉 
宣传
0 点 
来路
搜索引擎 
阅读权限
10 
来自
上海 
在线时间
0 小时 
注册时间
2008-2-25 
最后登录
2008-2-26 

查看详细资料

TOP

‹‹ 上一主题 | 下一主题 ››
发新话题
 

 

当前时区 GMT+8, 现在时间是 2008-7-24 05:58 蜀ICP备08000616号

清除 Cookies - 联系我们 - Ask Love - Archiver - WAP - TOP - 界面风格

  • YUYU_Emera-x

Powered by Discuz! 6.0.0,

Processed in 0.016034 second(s), 5 queries, Gzip enabled.

  • 控制面板首页
  • 编辑个人资料
  • 积分交易
  • 积分记录
  • 公众用户组
  • 个人空间管理
  • 资源中心
  • 名人堂
  • 社区银行
  • 醒目高亮
  • 勋章中心
  • 空间互踩
  • 便民查询
  • 邮箱图标
点击查看问情在alexa中的世界排名