Discuz论坛如何禁止游客查看用户个人资料页,阻止访问其他会员用户信息?

现在网络越来越发达,用户对于自己的个人隐私也开始更加关注。个人如此,作为网站也应该如此。保护用户的个人隐私,也应该是网站运营者必须考虑的问题。相信很多朋友安装Discuz论坛后都知道,当用户通过点击会员的用户名或者直接访问http://你的域名/?uid,可以查看该会员的个人空间,个人资料也随之泄漏。如下图所示:

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

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

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

第一种:开启广播。

这种方法是大家最为熟知的,大家在网上搜索得到的结果大多也是这种方法。具体操作如下:

登录论坛管理后台,依次点击“全局”——“站点功能”——“广播”,点击广播栏的“开启”按钮,开启广播功能。如下图所示:

开启广播功能后,如下图所示:

设置好后,在不登录论坛的情况下,访问网址:http://您的域名/?uid(如:http://您的域名/?2),测试一下结果:显示需要登录。如下图所示:

 第二种:修改代码。

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

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

①找到以下代码:

getonlinemember(array($space['uid']));

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

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

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

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

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

①找到以下代码:

getonlinemember(array($space['uid']));

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

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

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

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

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

①找到以下代码:

getonlinemember(array($space['uid']));

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

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

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

 
分享到:更多 ()