查看: 574|回复: 1

[discuz] Discuz禁止游客查看其他个人资料页,阻止访问其他会员用户信息!

[复制链接]

135

主题

24

回帖

995万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
9956960
威望
0
金币
9956680
鲜花(0) 鸡蛋(0)
发表于 2020-6-23 11:21:56 | 显示全部楼层 |阅读模式
现在网络越来越发达,用户对于自己的个人隐私也开始更加关注。个人如此,作为网站也应该如此。保护用户的个人隐私,也应该是网站运营者必须考虑的问题。相信很多朋友安装Discuz论坛后都知道,当用户通过点击会员的用户名或者直接访问http://你的域名/?uid,可以查看该会员的个人空间,个人资料也随之泄漏。如下图所示:

01.jpg

所以,我们就想着discuz论坛如何禁止游客查看用户个人资料页,阻止访问其他会员用户信息?这样不仅可以保护我们会员的隐私,而且可以防止搜索引擎抓取用户信息。

关于Discuz论坛如何禁止游客查看用户个人资料页,阻止访问其他会员用户信息,网上搜索给出的答案基本上都是一样的,就是在后台设置开启广播功能。开启广播后,只有登录用户才能查看会员个人资料。

下面凌山就给大家介绍几种Discuz论坛如何禁止游客查看用户个人资料页,阻止访问其他会员用户信息的方法。

(1) 禁止【游客】查看"个人资料"

修改文件︰
source/include/space/space_profile.php

①找到以下代码:

  1. getonlinemember(array($space['uid']));
复制代码


②在下方加入以下代码并保存文件:

  1. if (empty($_G['uid'])) { //如果用户uid为空,也就是用户未登录
  2. showmessage('quickclear_noperm');  // 提示:您没有权限进行此操作
  3. }
复制代码


修改好后,在不登录论坛的情况下,访问网址:http://您的域名/?uid(如http://您的域名/?2),显示如下图所示:

05.jpg

(2) 如果要禁止【所有用户】查看"个人资料",按以下方法修改

修改文件︰
source/include/space/space_profile.php

①找到以下代码:

  1. getonlinemember(array($space['uid']));
复制代码


②在下方加入以下代码并保存文件:

  1. if (empty($_G['uid'])||$_G['uid']) { //id不存在或存在都不允许访问
  2. showmessage('quickclear_noperm'); // 提示:您没有权限进行此操作
  3. }
复制代码


修改好后,在不登录或登录论坛的情况下,访问网址:http://您的域名/?uid(如http://您的域名/?2),显示如下图所示:



(3) 如果只允许管理员查看“个人资料”或用户只能自己查看自己的"个人资料",按以下方法修改

修改文件︰
source/include/space/space_profile.php

①找到以下代码:

  1. getonlinemember(array($space['uid']));
复制代码


②在下方加入以下代码并保存文件:

  1. if ($_G['uid']!=$space['uid']&&$_G['adminid'] != 1) { //当前用户id查看的不是自己的空间,并且当前用户不是管理员
  2. showmessage('quickclear_noperm'); // 提示:您没有权限进行此操作
  3. }
复制代码


修改好后,在不登录或登录论坛的情况下,访问网址:http://您的域名/?uid(如http://您的域名/?2)

1

主题

14

回帖

43

积分

新手上路

Rank: 1

积分
43
威望
5
金币
2
鲜花(0) 鸡蛋(0)
发表于 2024-3-2 11:06:39 | 显示全部楼层
保护隐私,这个真不错
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

快速回复 返回顶部 返回列表