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

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

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

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

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

x
http://bbs.zb7.com/thread-541282-1-1.html
) c3 ^, u& h5 {! y9 _( O+ c
! C3 H3 g8 L3 ]- R( o+ J( t
6 |4 [4 m- C7 {( f  B2 E* B  d! w( K
很多小站http://bbs.zb7.com/购买的数据库空间很有限,但没用多久数据库就没了,但其实并没有多少数据,下面简单说说以下几个表清空处理(操纵前请备份好数据库)。
# K4 e- X, u8 E. x5 ~pre_common_block_item_archive  '区块数据存档 存在已经删除的文章 和主题帖
& h" _1 x+ Q, g8 kpre_forum_spacecache ' 论坛空间缓存表
  C+ v2 {3 k7 K9 _pre_home_notification '空间通知表
0 a& n4 Z9 o. D" S5 ~6 s7 Jpre_common_block_item 'DIY数据,建议在清空本表时,先导出所有DIY。然后清空DIY后,再清空本数据。再导入。( s* m3 T4 x% m' H, y

9 E: |3 h+ T' p% ~+ S$ I0 t. g以下表根据实际情况操作:2 R8 z8 V+ w4 f1 L7 m
游客,如果您要查看本帖隐藏内容请http://bbs.zb7.com/forum.php?mod=post&action=reply&fid=45&tid=541282$ D# ~& Z' w# ^7 W* r* A
5 S* X4 n/ p1 X
8 ^5 D3 w( ~; j: t8 O, }

' J$ _0 [3 D/ T1 I7 [. upre_common_block_pic'该表保存着数据调用及DIY调用的图片缩略图路径。1 f9 v) a) D5 d1 N% U9 l
清空时可连同http://beimeilife.duckdns.org/bml1/blmpics/attachments/block文件夹一起清空(保留block文件夹下的index.htm)。* {6 z* @: ?  o8 q
不过清空后,所有DIY页面有图片的都需要手动更新数据。$ k' x* E" G6 f. J  v
更新数据后图片会自动生成。7 n0 x5 f& {5 p' F5 C
清空此表及此目录的目地是为了清除沉余数据及文件。
8 ?1 ]1 @  F0 v3 N- F8 E开启图片模式的用户请勿清空本表,不然图片模式下的图片无法显示。
* M: m2 N) i& q
) h7 i' y9 L( {
& J& f8 F5 S. k1 dpre_common_block_item_archive '清空后空出2.7M空间
+ ~2 E& I# ]( c0 d! Xpre_forum_spacecache                   '清空后空出2.3M空间
6 {, _* Z/ O( f) o7 ?8 ~pre_home_notification'清空后空出 31M空间, @9 `& B; E! C. d5 R
pre_common_block_item'清空后空出1.9M空间0 V0 }1 w$ U6 s9 Q5 x
pre_common_block      '删除多余数据后空出 13kb空间
* A  d3 y$ X5 l+ P. ~1 \& zpre_common_credit_rule_log'清空后空出3.1M空间# {# k( H/ w$ w# Q) u; G' G# s5 l
3 ^1 S% a1 o  f# s; _
本来数据库已经有85M了,结果按以上方法忧化后, 就只有45M了。空出了40M左右。
+ Y' x! g& a& l- p6 j8 T4 ^) X' M# B  ]' m1 d2 R/ l
注意了哦,是清空表,不是删除表。建议在操作前,请先备份数据库。
$ Y- P! p) \0 z3 Q8 G--------------------------------------------------------------------------------------------------
, `6 T3 B9 b/ T9 p5 d8 G; Jhttp://www.zb7.com/discuz/程序可清空目录列表! U: E( Q/ T! {  n: f
./data/imagecache) D2 t& r0 k. O% E9 a2 A, J' e1 v
./data/cache'(保留cache文件夹下的index.htm)
' g; ~  Z+ b1 M+ c./data/threadcache'(保留threadcache文件夹下的index.htm)0 s0 i/ V( P  N# s7 _, k! [2 J7 K  k" J* |
./http://beimeilife.duckdns.org/bml1/blmpics/attachments/temp  Y3 V- R: H7 l

2 v! }( D! ^$ L8 N9 l$ [./http://beimeilife.duckdns.org/bml1/blmpics/attachments/forum/threadcover'是图片模式下的缩略图。
( Q4 D1 s; W' [7 B; M. ~, C如果你没用图片模式,可以直接删除里面的目录及文件,保留threadcover文件夹下的index.htm$ o3 a0 U! O+ `' J$ M, r

( x' i+ U# L% v, c. ?在清空./data/cache目录后,一般要进入网站后台,更新一下缓存。不然网站首页将会严重错位。
. O% F$ l; t6 G-----------------------------------------------------------------------------------------------------------
0 r0 S. D2 a& F0 I* eDiscuzX3的数据库中存在的可删除的旧表:
% S( z5 {) r9 c8 e# R- n* a
" }/ i, Z1 `# f( h2 Dpre_home_viewlog                                         是旧程序的。可以删除,但最好先备份# V8 g: k/ T. S( s4 E. L0 ^
pre_forum_project                                         是旧程序的。可以删除,但最好先备份
6 @  q6 y" ?# h$ x( Apre_forum_postposition                                  是旧程序的。可以删除,但最好先备份+ b- T0 g) T6 O4 \8 e
pre_forum_groupranking                                是旧程序的。可以删除,但最好先备份
( f1 x  u' x# `! T6 lpre_common_moderate                             是旧程序的。可以删除,但最好先备份
) k) ~0 V$ \  ], t  R9 U8 qpre_common_member_stat_searchcache  是旧程序的。可以删除,但最好先备份& K4 s4 l; C2 W9 u7 m( Z
pre_common_member_stat_search      是旧程序的。可以删除,但最好先备份
, O7 J" x2 H6 @. z9 _pre_common_member_stat_fieldcache      是旧程序的。可以删除,但最好先备份
9 V/ z" U6 |) |) h4 D2 vpre_common_block_item_archive        是旧程序的。可以删除,但最好先备份
9 b, D- ]" X( M8 p2 cpre_common_adminsession          是旧程序的。可以删除,但最好先备份
9 W& [  ?& |$ j3 J/ z7 F( Jpre_common_addon                         是旧程序的。可以删除,但最好先备份3 m4 |  t0 J. y4 Y  \

* |" @) h7 j+ g! w
! }, g# p9 w) @. E! g' I0 c9 N

转载请保留当前帖子的链接:https://www.beimeilife.com/thread-44457-1-1.html 谢谢
沙发
发表于 2017-4-18 11:18 | 只看该作者
Discuz 哪些文件和文件夹需要777权限5 k2 s$ u4 i4 b
./config/config_global.php
7 Z3 j" Z4 l, @1 _0 O# A! G./config/config_ucenter.php
, o' j( x& D6 Y) b1 Q./config
4 U% y) E$ t, ^1 I./data
% d$ N  G& Y% o5 h./data/avatar, d6 E  h0 @) M* j* ^) A
./data/plugindata, \3 _6 H0 f  O1 J
./data/template
$ p1 D, H3 R4 @. y0 P/ c./data/threadcache
7 v; j5 n+ q2 s4 M./http://beimeilife.duckdns.org/bml1/blmpics/attachments
4 k3 u% u0 H$ u4 X3 q& f./http://beimeilife.duckdns.org/bml1/blmpics/attachments/album
0 h6 o3 o5 t3 ?/ Y4 s: Y2 j./http://beimeilife.duckdns.org/bml1/blmpics/attachments/forum/ V$ A( B5 D2 A- J+ g
./http://beimeilife.duckdns.org/bml1/blmpics/attachments/group8 v) ?' n( t. s" s, @; p
./data/log2 `: i' A: g* C- f: B3 x; j
./uc_client/data/cache
7 Z# x9 p9 k4 R+ W./uc_server/data/- `6 N# Y, q# F8 _% P
./uc_server/data/cache
* N4 x! a+ `1 j./uc_server/data/avatar
, R" t: {* }1 [9 ]! r./uc_server/data/backup
3 _* f( {  I- N: J./uc_server/data/logs
, p, U2 |3 N5 G. I; Z./uc_server/data/tmp
0 K. I8 R- H+ }./uc_server/data/view
板凳
发表于 2017-4-18 11:19 | 只看该作者
https://security.tencent.com/index.php/blog/msg/17从Discuz论坛管理看网站安全防护
前言

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

' H" t/ Q% a& w5 ~
    由于Discuz的安装和管理极其方便,许多企业管理员并未对他的安全风险有相应的了解;Discuz作为开源软件,历史上被发现若干安全漏洞,极容易导致服务器被入侵。
* \& A4 G% K$ U7 ?5 \- j2 q7 w
    出于工作需要,笔者经常会接触到公司的各类Discuz论坛,对Discuz的安全问题十分关注,这里给大家分享一些关于discuz论坛防护的方案,希望能给广大企业用户提供帮助。

) u; J7 G4 Q9 b- e9 B    Discuz论坛管理大致分为服务器安全加固、网站安全加固、日常管理三个方面的内容,以下是详细的实施方案可供参考。

+ R( h; T! ]( T
服务器安全加固

* w: o6 A' o! U$ \/ h2 _& z0 o
确保网站安全首先要保证服务器各项组件的安全,如discuz服务器的一般组件有Apache、php、mysql等,确保这些第三方软件安全有如下一些原则:
. a" f( g9 F6 g" b8 C( U
1、权限最小化
. H/ s% c2 g: R" R, ?: D/ c# a3 f: _& @
a) Webserver及数据库服务均以非root权限启动;

! J* g- `# N4 _2 M2 f
b) 文件属主与webserver进程属主不同(一般设置文件的属主为root)
+ y& s" i! Z# l2 a) W
c) 确保discuz网站的目录和文件权限最小化。
目录权限除必须为777的目录外,其他目录权限须设置为755文件权限除必须为777的文件外,其他文件权限须设置为644
d) 数据库与webserver不在同一台机器上
9 T9 t: V$ O0 S5 S0 |
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项为网站目录; j0 W+ G2 ?: Y. K0 Y3 U! W
2、默认选项需要加固
6 P: ^* c0 }; w
a) 删除默认webserver页面
% n1 ~. G/ b2 y7 w8 |
如apache需要删除icons和manual两个目录
b) 禁用php危险函数
在php.ini配置:disable_functions=exec,popen,system,passthru,shell_exec,escapeshellarg,escapeshellcmd,proc_close,proc_open
4 M: ~* n. w) n
3、敏感信息不显示
a) 关闭webserver的目录浏览功能

, i+ r* q0 ~  `/ BApache配置文件中的目录配置项的“Indexes”删除或者改为“-Indexes”
b) 关闭php的错误消息显示
5 N1 C/ @7 t2 v$ U4 G+ z( g. t
Php配置:display_errors = Off
7 d) O5 L% U. R! H* W% K7 Y$ o
4、开启日志记录
a) 开启webserver的日志记录功能8 Z; Y6 w# V! q) F( w( p3 z% K
CustomLog /www/logs/access_log common
; |1 H9 m! F* N; v
b) 开启php的错误日志记录功能
! A  N  z/ I, A) O9 b* w
log_errors = Onerror_log = D:/usr/local/apache2/logs/php_error.log注意:该文件必须允许apache用户的和组具有写的权限+ G$ [! m- c& Y$ D1 U: ~
5、实施ip策略
  L$ Q" y' s7 r% H+ k0 q+ U
a) 数据库仅开放在内网
/ X! ~1 ^- v1 K! ~; f5 @( B
b) 不允许任意ip连接数据库

  \1 E+ b% E7 r8 e
c) Iptables禁止所有的非法连接

. h! ^" t6 X, r- j8 Q! C% f+ f
d) 管理目录仅允许内网访问

5 g. |) J1 g2 \$ D2 |
网站安全加固
9 t/ {5 X( S. ?* W5 Q# a: L% o
服务器足够安全只是网站安全的前提,确保网站安全大致有如下措施:

0 e3 w' F! w8 z) j
1、账户安全

, T' x/ K- ~. H  P$ o
a) 用户密码需要加密存储
" h+ _1 R8 {. O7 Fb) 用户密码需要采用密文的形式在网络上传输
; z* Q: e8 x& {: H! s
2、后台管理
* B/ L5 y2 P3 a5 J$ b; m
a) 后台管理界面需要使用双因子确保管理员的合法性。常见的因子如(ip策略、token、用户密码)等。

6 L/ g. s% Q" x0 M
3、业务配置
- _+ Q0 e2 H0 v* 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文件,限制到特定的域名或者将此文件删除。
, N( p5 L& [/ y3 {( x
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; s* i5 o, Q% n) T9 m7 M
  J3 x" r+ [* v% p
日常管理

0 i+ k6 j3 |  G! O+ z7 I7 N1、 所有的第三方软件均需要使用最新版本,确保安全。
6 t# S/ p& E0 l
2、 关注所用到的第三方软件的安全信息,及时更新补丁或升级。如dz论坛容易出现nginx的解析漏洞
在PHP的配置文件php.ini中配置cgi.fix_pathinfo = 0,防止nginx文件解析漏洞
3、 关注官方发布的安全信息。
$ T$ G3 R5 ]8 r0 m- ^http://www.discuz.net/forum-10-1.html

$ p, p% J. B6 s# s& ^: M4 _
4、 dz论坛统一管理。统一化的管理可以高效的对discuz论坛进行更新、维护,避免出现各个管理员对安全信息掌握不一致的问题。

6 p7 L/ y4 @3 r( A
5、 增加dz的网站风险检测系统,24扫描dz站点,及时掌握dz的安全状况

- I# F; n  P0 P7 q2 \- A
6、 增加漏洞收集渠道,更好的掌握自身产品的安全漏洞。
8 u+ M' D0 E! O4 h- Y" k
     作为普通网站的管理人员,通常需要遵循服务器安全加固中的1,2,3,4四点、网站安全加固的1,2两点、及日常管理的1,2,3三点用于确保网站的安全性。
6 ?. ?3 U, {- |" f# }3 ]5 ^
    中小型企业若使用到discuz论坛可以参考网站安全加固的业务配置选项,更好的防御discuz论坛。

4 n( E( I' B3 _0 r5 S, r! ^, ~
    对于人力不足或在短期内迫切需要提升网站安全性的管理人员来说,推荐使用安全宝(http://anquanbao.com/)或加速乐(http://www.jiasule.com/)的一键安全防护功能。

2 }5 }  y6 X: S. J. l1 a6 A0 O  {: S2 j9 h+ o# r

% C! d- ?# M1 \  f

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

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

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

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