点标签看更多好帖
开启左侧

[学习借鉴] Discuz! X3 数据库优化及目录垃圾清理

[复制链接] 2
回复
9731
查看
打印 上一主题 下一主题
楼主
跳转到指定楼层
发表于 2017-3-3 02:34 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?注册

x
http://bbs.zb7.com/thread-541282-1-1.html
3 T( P( a7 b8 o5 |; Y
3 m! a6 j5 e7 Y% \: I
  T5 \) L4 [8 d; G
2 _* W: j: T5 h( N- K5 ?很多小站http://bbs.zb7.com/购买的数据库空间很有限,但没用多久数据库就没了,但其实并没有多少数据,下面简单说说以下几个表清空处理(操纵前请备份好数据库)。" R+ f3 M! S- Z& u$ z0 y# \3 O
pre_common_block_item_archive  '区块数据存档 存在已经删除的文章 和主题帖
' @: P% O, t9 s  ?, P; _, w3 h% bpre_forum_spacecache ' 论坛空间缓存表' m  b5 Q% C, R' F1 F$ J
pre_home_notification '空间通知表
5 S% i: o( F+ [  `pre_common_block_item 'DIY数据,建议在清空本表时,先导出所有DIY。然后清空DIY后,再清空本数据。再导入。7 U  P* i% P4 C' }5 B: E# R

# D9 b6 ?, a& A0 b- N以下表根据实际情况操作:4 d6 H3 {- p1 m# h. l
游客,如果您要查看本帖隐藏内容请http://bbs.zb7.com/forum.php?mod=post&action=reply&fid=45&tid=541282
# x4 w- R5 G' G/ {7 \: i2 e7 A" }& F, I6 w- k( b

1 x  m, {& n; l  Z) c6 d  j) @
" X* o9 u6 z8 R+ Dpre_common_block_pic'该表保存着数据调用及DIY调用的图片缩略图路径。$ R; `( I1 b7 q* Y
清空时可连同http://beimeilife.duckdns.org/bml1/blmpics/attachments/block文件夹一起清空(保留block文件夹下的index.htm)。) l" c4 t. j: t* ~. k
不过清空后,所有DIY页面有图片的都需要手动更新数据。% @0 V( `! H! s
更新数据后图片会自动生成。
' r/ O  R# q& b9 e& C+ U清空此表及此目录的目地是为了清除沉余数据及文件。
" {) E2 C4 S, P4 A开启图片模式的用户请勿清空本表,不然图片模式下的图片无法显示。) y0 B/ o. g( S

8 Y0 Y# w1 b2 Z, q0 z) N) D. F/ E4 {
pre_common_block_item_archive '清空后空出2.7M空间
2 @' v7 |* s7 upre_forum_spacecache                   '清空后空出2.3M空间
7 }7 c6 O) i# [" [2 D+ bpre_home_notification'清空后空出 31M空间
4 R% v# q2 H/ C# |pre_common_block_item'清空后空出1.9M空间
. }+ A+ R5 y" H# R) W% x4 D7 Ipre_common_block      '删除多余数据后空出 13kb空间
3 N' x8 |' W9 S* Spre_common_credit_rule_log'清空后空出3.1M空间
3 o) I6 Z6 i. a# g. y# n0 H3 d
" M0 ^8 p, g8 T3 R; u; t/ e! c5 d本来数据库已经有85M了,结果按以上方法忧化后, 就只有45M了。空出了40M左右。  O0 S: D3 U2 b5 W

0 W2 h& t+ |! J1 D3 T$ N注意了哦,是清空表,不是删除表。建议在操作前,请先备份数据库。
% t; p/ g8 x4 `  P+ A3 D3 m/ i--------------------------------------------------------------------------------------------------
. p& D5 d- ]! X3 ihttp://www.zb7.com/discuz/程序可清空目录列表2 m; a/ w- W/ N7 H  M9 x% `
./data/imagecache5 b* a0 J* K, U# f/ R
./data/cache'(保留cache文件夹下的index.htm)
: M$ a. M  s( s, q4 p( ^2 Y# _./data/threadcache'(保留threadcache文件夹下的index.htm)$ T6 ~0 X* o, z$ A4 P8 W( l; W
./http://beimeilife.duckdns.org/bml1/blmpics/attachments/temp
2 o1 E9 u0 g$ T7 [
7 k) i" A7 @8 O. ?" y( b./http://beimeilife.duckdns.org/bml1/blmpics/attachments/forum/threadcover'是图片模式下的缩略图。! f; S; c- s- ?
如果你没用图片模式,可以直接删除里面的目录及文件,保留threadcover文件夹下的index.htm
. B, {" v6 [1 r) ~
$ I. B0 h* \: H! u: K& @* E在清空./data/cache目录后,一般要进入网站后台,更新一下缓存。不然网站首页将会严重错位。9 z1 f0 }6 J. z2 \
-----------------------------------------------------------------------------------------------------------' `0 r# b7 h8 y& ~2 C/ X/ [& ?
DiscuzX3的数据库中存在的可删除的旧表:- V$ Y2 S5 g1 y7 q1 p' N) b

! h. T) s4 a" D5 w/ k1 ~4 A  Wpre_home_viewlog                                         是旧程序的。可以删除,但最好先备份
$ t: y) K: _* ~. dpre_forum_project                                         是旧程序的。可以删除,但最好先备份
# V9 C3 y. S# C; T8 n9 x& K- V! opre_forum_postposition                                  是旧程序的。可以删除,但最好先备份
6 s' }5 I# e! n' j2 N: u% `, Ipre_forum_groupranking                                是旧程序的。可以删除,但最好先备份( @% v  m2 |' f; t
pre_common_moderate                             是旧程序的。可以删除,但最好先备份, `- c* h4 i7 i2 z8 ]8 h4 @4 N
pre_common_member_stat_searchcache  是旧程序的。可以删除,但最好先备份
& E2 ^/ ]. X: P8 s& e$ Z* L5 Cpre_common_member_stat_search      是旧程序的。可以删除,但最好先备份
+ U" }5 U0 ~" y& a: s$ _; ]5 jpre_common_member_stat_fieldcache      是旧程序的。可以删除,但最好先备份% A3 K# M) L7 @. `4 M) k- x
pre_common_block_item_archive        是旧程序的。可以删除,但最好先备份
& z5 p5 W* s* n+ D/ X* qpre_common_adminsession          是旧程序的。可以删除,但最好先备份
% B; ~# \7 a  q! o2 }/ R# xpre_common_addon                         是旧程序的。可以删除,但最好先备份
1 D' t5 H- D7 |: C$ S& }$ B1 m' b* N7 o$ }# I$ Y

3 S/ d$ h2 S# \% L+ m$ v

转载请保留当前帖子的链接:https://www.beimeilife.com/thread-44457-1-1.html 谢谢
沙发
发表于 2017-4-18 11:18 | 只看该作者
Discuz 哪些文件和文件夹需要777权限* N; v/ y; i+ j+ \
./config/config_global.php
- w( `0 x4 [! t7 h% t+ }* m./config/config_ucenter.php# Q+ E1 l2 ^/ b. ]. E
./config. R, b6 u. q, |! }: p7 G' y' k* L" |2 n
./data
# u' |5 O( ]1 y* v. n1 e/ F  v./data/avatar4 B+ D* x) Q6 m% m
./data/plugindata
# K3 W3 @0 i5 ?./data/template
% {  v% m% A, d' N./data/threadcache
+ _) ]+ y( S2 W% Z# e; R3 S./http://beimeilife.duckdns.org/bml1/blmpics/attachments' W2 q) {7 w; j) D2 ?
./http://beimeilife.duckdns.org/bml1/blmpics/attachments/album/ j+ q! F& A) ?0 e+ L
./http://beimeilife.duckdns.org/bml1/blmpics/attachments/forum  G6 D, X% J" j6 |! C- V9 @( Y% r
./http://beimeilife.duckdns.org/bml1/blmpics/attachments/group" C" B. v  k) s" E$ M( V! f
./data/log
+ o6 p4 ~0 y1 A# v2 C./uc_client/data/cache
+ X2 Q7 k# i% K: _" o4 @./uc_server/data/; B% q6 G$ U% y$ p! J
./uc_server/data/cache
, [, ?2 K; u( E( U* I  v& T./uc_server/data/avatar
+ {; `+ K3 A% ?4 F./uc_server/data/backup
: P& U. A( q" I$ K' O/ }- z./uc_server/data/logs
1 h8 ?, j8 {1 B9 L8 F# N3 J./uc_server/data/tmp
1 x( Z6 B' P# P! \' {  C./uc_server/data/view
板凳
发表于 2017-4-18 11:19 | 只看该作者
https://security.tencent.com/index.php/blog/msg/17从Discuz论坛管理看网站安全防护
前言

& o0 |! m% ~/ `, j# D7 _
    Discuz是康盛公司推出的一套通用社区论坛软件系统,用户可以在不需要任何编程基础上,通过简单的设置和安装,在互联网上搭建起具有完善功能、高负载、高定制的论坛。Discuz是一个经过完善设计,适用于各种服务器环境的高效论坛系统解决方案。

! ]" q+ [: Z' q1 D! M% z! D, b$ C
    由于Discuz的安装和管理极其方便,许多企业管理员并未对他的安全风险有相应的了解;Discuz作为开源软件,历史上被发现若干安全漏洞,极容易导致服务器被入侵。
" Y- h$ R, f9 ^# X
    出于工作需要,笔者经常会接触到公司的各类Discuz论坛,对Discuz的安全问题十分关注,这里给大家分享一些关于discuz论坛防护的方案,希望能给广大企业用户提供帮助。
! ~: z: T0 a; q4 I
    Discuz论坛管理大致分为服务器安全加固、网站安全加固、日常管理三个方面的内容,以下是详细的实施方案可供参考。
+ H( K1 j, U! P( C! w4 i
服务器安全加固
+ B# f( G7 ^; `6 _4 `/ z. u
确保网站安全首先要保证服务器各项组件的安全,如discuz服务器的一般组件有Apache、php、mysql等,确保这些第三方软件安全有如下一些原则:
& y, }+ X6 m# t! j5 E) T
1、权限最小化
' O( @" K) o" d  I4 v
a) Webserver及数据库服务均以非root权限启动;
* \+ M  F* G( U# j8 E8 ?9 \
b) 文件属主与webserver进程属主不同(一般设置文件的属主为root)

. G7 j) M& ]% _) [% B8 U" p" j$ L
c) 确保discuz网站的目录和文件权限最小化。
目录权限除必须为777的目录外,其他目录权限须设置为755文件权限除必须为777的文件外,其他文件权限须设置为644
d) 数据库与webserver不在同一台机器上

' [- @1 Q; b  p# }6 S" A- G# ]) i
e) 可写的目录没有执行脚本权限,可执行脚本权限的目录不可写。
常见可写目录为:./config、./data、./uc_client/data/、./uc_server/data/常见不可解析php的目录为:./data/、diy、template、attachment、./install/images、forumdata、images在apache中配置不允许执行php权限如下:<Directory "/discuz/data/">    php_flag engine off    <Files ~ ".php">        Order allow,deny        Deny from all    </Files></Directory>
f) 控制脚本仅允许访问网站文件
在php.ini中配置open_basedir项为网站目录
. o" u: q5 r+ r
2、默认选项需要加固

% H7 R0 h/ w9 b* n6 H  r. j; U
a) 删除默认webserver页面
/ z0 a3 h" x3 k* e. N- w$ k
如apache需要删除icons和manual两个目录
b) 禁用php危险函数
在php.ini配置:disable_functions=exec,popen,system,passthru,shell_exec,escapeshellarg,escapeshellcmd,proc_close,proc_open
& m. G; R0 b8 |, ~$ i# B9 `
3、敏感信息不显示
a) 关闭webserver的目录浏览功能
; e  }9 W: C1 O( H0 {1 h9 [* ^
Apache配置文件中的目录配置项的“Indexes”删除或者改为“-Indexes”
b) 关闭php的错误消息显示
* N: H+ E2 ~2 v2 c  m
Php配置:display_errors = Off* h" J3 }+ ?2 c1 A2 b
4、开启日志记录
a) 开启webserver的日志记录功能7 L9 e, }3 K% J- _
CustomLog /www/logs/access_log common

6 h9 X$ J, f) ^+ ^+ z7 L5 n+ V0 f b) 开启php的错误日志记录功能: E9 o9 h! Z& O  B# D
log_errors = Onerror_log = D:/usr/local/apache2/logs/php_error.log注意:该文件必须允许apache用户的和组具有写的权限
1 [* u; n( h% E( c
5、实施ip策略

0 r" ^- Y# b0 O: N$ u& i+ _# i
a) 数据库仅开放在内网
5 c2 P3 B. M3 q" J% H! t! `3 T% O
b) 不允许任意ip连接数据库
/ e$ F: O" t4 f; l: w
c) Iptables禁止所有的非法连接
0 ^) a$ \# r% X5 ~# C2 f
d) 管理目录仅允许内网访问

. p  y0 p1 @0 d9 F: I8 G- n
网站安全加固
: R& R% h. ^6 V- ]$ S
服务器足够安全只是网站安全的前提,确保网站安全大致有如下措施:

% ~; i0 O7 _; v
1、账户安全

$ I3 k' U6 m5 b0 T' h3 e/ Z" ?
a) 用户密码需要加密存储
3 I* A% f" `& y& u7 jb) 用户密码需要采用密文的形式在网络上传输
( B* q' i9 z5 o
2、后台管理
# h5 z0 M5 w6 A
a) 后台管理界面需要使用双因子确保管理员的合法性。常见的因子如(ip策略、token、用户密码)等。
$ J1 i  t. _8 u8 l6 c; N
3、业务配置
) i6 ~) X5 g; L
a) 针对discuz业务特性,在安装的时候会删除不必要的插件
api目录(外部接口)里的以下功能如果不使用可以删除Db目录 ---> UCenter数据库备份接口google---google引擎使用Javascript目录 ---> 数据和广告的js调用Trade目录 ---> 在线支付接口Manyou目录 ---> 漫游和云平台使用
b) 关闭论坛的个人空间,防止恶意钓鱼,欺诈。
Discuz! X1.5关闭个人空间方式:修改文件 source/module/home/home_space.php,搜索如下代码:$do=(!empty($_GET['do'])&&in_array($_GET['do'], $dos))?$_GET['do']:'index';下面添加如下代码: if(in_array($do, array('home', 'doing', 'blog', 'album', 'share', 'wall'))) {showmessage('抱歉,家园功能尚未开启', 'forum.php');}Discuz! X2关闭个人空间方式:后台->全局->站点功能->功能模块(是否开启家园功能,点否即可关闭)
c) 检查crossdomain.xml文件,限制到特定的域名或者将此文件删除。

0 x1 l& U2 i6 j- a
d) 遵循Discuz常见安全配置
1、forumfounders= '1'论坛创始人UID,建议只有一个创始人。2、论坛防御级别配置attackevasive = 0 (由于会影响用户,这里默认是0,如果遭到 攻击,可以自行尝试1,2,4,8的配置)论坛防御级别,可防止大量的非正常请求造成的拒绝服务攻击。3、urlxssdefend = 1论坛访问页面防御开关。4、admincp['forcesecques'] = 1管理人员必须设置安全提问才能进入系统设置,0=否,1=是【安全】。5、admincp['checkip'] = 1后台管理操作是否验证管理员的 IP,1=是【安全】,0=否。6、admincp['tpledit'] = 0 (这项针对discuz! 7.2的安全配置)是否允许在线编辑论坛模板 1=是 0=否【安全】。7、admincp['runquery'] = 0是否允许后台运行SQL语句1=是,0=否【安全】。8、admincp['dbimport'] = 0是否允许后台恢复论坛数据 1=是 0=否【安全】。详细说明请参考:http://faq.comsenz.com/viewnews-924
0 {( M7 C& H2 \- \" |. q) R8 k
0 m7 ~+ J; Q6 b' a9 S
日常管理
1 [: W! l9 e4 a6 B6 g2 f6 o& c1 U. Y
1、 所有的第三方软件均需要使用最新版本,确保安全。

% _6 Q, V" X4 F' ~
2、 关注所用到的第三方软件的安全信息,及时更新补丁或升级。如dz论坛容易出现nginx的解析漏洞
在PHP的配置文件php.ini中配置cgi.fix_pathinfo = 0,防止nginx文件解析漏洞
3、 关注官方发布的安全信息。& ]2 r, n2 l- k( x! f* V/ c
http://www.discuz.net/forum-10-1.html
7 a* T  W- r" C+ i1 ^
4、 dz论坛统一管理。统一化的管理可以高效的对discuz论坛进行更新、维护,避免出现各个管理员对安全信息掌握不一致的问题。

6 n7 i( g6 ]0 J- D
5、 增加dz的网站风险检测系统,24扫描dz站点,及时掌握dz的安全状况
& ?" Z; }. X# F) v0 e
6、 增加漏洞收集渠道,更好的掌握自身产品的安全漏洞。

% _# _( d# B% R9 Z( \- ~- @/ B
     作为普通网站的管理人员,通常需要遵循服务器安全加固中的1,2,3,4四点、网站安全加固的1,2两点、及日常管理的1,2,3三点用于确保网站的安全性。
* c! U3 A5 p3 N+ N! m
    中小型企业若使用到discuz论坛可以参考网站安全加固的业务配置选项,更好的防御discuz论坛。
9 w. B& V8 z! @1 J
    对于人力不足或在短期内迫切需要提升网站安全性的管理人员来说,推荐使用安全宝(http://anquanbao.com/)或加速乐(http://www.jiasule.com/)的一键安全防护功能。

' J8 R  T/ G6 M- w
: l+ j- j6 s/ I' v. q6 S
9 _# f$ C  ~! f! w& o

使用高级回帖 (可批量传图、插入视频等)快速回复

您需要登录后才可以回帖 登录 | 注册

本版积分规则   Ctrl + Enter 快速发布  

发帖时请遵守我国法律,网站会将有关你发帖内容、时间以及发帖IP地址等记录保留,只要接到合法请求,即会将信息提供给有关政府机构。
快速回复 返回顶部 返回列表