三个有效解决DEDECMS垃圾信息的方法
方法一:删除垃圾用户和评论
1、回收站:登录DEDECMS后台,找到“内容管理”选项,点击“内容回收站”,然后选择“一键更新或您需要更新的页面”,这可以清理系统中的未审核文档。
2、批量删除垃圾用户:
查找垃圾用户:在数据库中运行以下SQL语句以找到垃圾用户:
“`sql
SELECT logintime, userid, sex FROM hfpet_member WHERE sex = ” ORDER BY logintime DESC;
DELETE FROM hfpet_member WHERE mid > 8000 AND sex = ”;
“`
删除特定ID的用户:
“`sql
DELETE FROM dede_arctiny WHERE id >= 3000 AND id <= 5000;
DELETE FROM dede_arctcle WHERE aid = 123;
“`
3、删除冗余文件:定期清理data/tplcache
目录下的模板缓存文件,这些文件会随着时间累积并占用大量空间。
方法二:防止垃圾文章群发、评论和注册
1、来源判断:在member
目录下的文件里加上来路判断代码:
“`php
if (stristr($_SERVER[‘HTTP_REFERER’], "jb51.net")) {
// 正常执行注册或登录
} else {
echo ‘<meta httpequiv="ContentType" content="text/html; charset=utf8" />’;
ShowMsg(‘对不起,您的来源有问题,如确认没问题请联系我们!’, ‘index.php’);
exit();
}
“`
这段代码用于判断访问来路是否来自自己的网站,如果不是则返回主页。
2、后台设置:
登录后台,进入“系统” > “验证安全设置”,启用各种设置以防止恶意注册。
进入“系统” > “互动设置”,启用验证码等设置以防止垃圾评论。
方法三:清理冗余废弃未引用图片
1、增加清理按钮:
打开后台dede/sys_sql_query.php
文件,在文件中搜索如下代码:
“`php
//修复全部表 else if(dopost=="repairAll") { $dsql>SetQuery("Show Tables"); $dsql>Execute(‘t’); }
“`
在上述代码后面添加以下代码:
“`php
else if(dopost=="clearImages") { //清理未引用的图片
$types = array(‘image’, ‘flash’, ‘media’, ‘file’);
foreach($types as $type) {
$dsql>SetQuery("SELECT * FROM#@__uploads
WHERE atype=’$type’ AND aid NOT IN (SELECT aid FROM#@__archives_article
)");
$dsql>Execute(‘t’);
}
}
“`
保存文件后,在后台增加一个名为“clearImages”的查询操作。
2、使用新增功能:登录后台,选择“系统” > “SQL命令行工具”,选择刚刚添加的“clearImages”操作,点击“确定”即可清理未引用的图片。
FAQs(常见问题解答)
1、如何防止垃圾用户注册?
可以通过后台设置启用验证码、限制同一IP短时间内多次注册等措施,具体操作路径为“系统” > “验证安全设置”。
2、如何批量删除未审核的文档?
使用SQL语句批量删除未审核的文档,
“`sql
DELETE FROM dede_addonarticle WHERE arcrank=1;
“`
3、如何清理模板缓存文件?
定期手动删除data/tplcache
目录下的模板缓存文件,或者编写脚本自动清理。
原创文章,作者:未希,如若转载,请注明出处:https://www.kdun.com/ask/1103474.html
本网站发布或转载的文章及图片均来自网络,其原创性以及文中表达的观点和判断不代表本网站。如有问题,请联系客服处理。
发表回复