Discuz! 的功能并不完全展示在后台, 有部分在运营过程中非常有用的功能写在配置文件以及系统文件中,Discuz! 运维助手现在就为您介绍这部分功能.

Discuz! 7.2 以及之前的版本配置文件为论坛程序目录下的 config.inc.php, 而 Discuz! X 版本的配置文件则是论坛目录下的 config/config_global.php, 两者中的部分功能标识类似, 这里以 Discuz! X 版本为例对其中的常用项进行说明.

我们可以先打开 config/config_global.php, 虚拟主机的用户可以使用 FTP 工具进行编辑, 独立主机或者 VPS 主机用户可以直接用文本编辑器打开.

  1. $_config['output']['gzip']              = 0;           // 是否采用 Gzip 压缩输出,0 为关闭,1 为开启.

默认情况下 Gzip 压缩输出是关闭的, 开启可以一定程度的加快 Discuz! 站点的浏览速度, 同时也会一定程度的增加服务器的负担.

  1. $_config['cookie']['cookiedomain']            = '';          // COOKIE 作用域

默认情况下作用域为空, 当您在后台做了域名设置或者整合了其他程序而无法在各个模块以及程序间实现同步登录时, 可以在这里设置一下 cookie 的作用域, 写法如: 当您的域名为 abc.com 时, 在''间填写.abc.com.

  1. $_config['security']['attackevasive']      = 0;           // CC 攻击防御 1|2|4|8

默认情况下数值为 0, 您的站点是否被人恶意攻击过? 低成本的 CC 攻击是否让您非常的头疼, 当有人恶意攻击您的站点, 造成服务器负载高的时候, 除了通过防火墙进行相关的屏蔽措施外, 如何保证站点的正常运营呢? 这时可以考虑先开启这个设置. 参数说明:0=关闭, 1=cookie 刷新限制, 2=限制代理访问

, 4=二次请求, 8=回答问题 (第一次访问时需要回答问题), 一般填写 1|2|4 即可, 此设置不可长期开启, 会造成搜索引擎的收录错误, 在防火墙防攻击设置完成后, 改回 0.

  1. $_config['admincp']['forcesecques']           = 0;           // 管理人员必须设置安全提问才能进入系统设置 0=否, 1=是 [安全]

默认情况下值为 0, 如果您的站点有多个管理员, 需要这些管理员的登录信息更加完整安全时, 可以开启这个设置, 强制要求设置登录问答.

  1. $_config['admincp']['founder']             = '1';         // 站点创始人:拥有站点管理后台的最高权限,每个站点可以设置 1 名或多名创始人

默认情况下值为 1, 因为默认安装的创始人 UID 为 1, 如果您在后台设置了其他副站长, 并且需要这个副站长拥有创始人权限时, 可以在这里设置为'1,2';2 可以改为这个副站长的 UID. 这样就增加了一个或者多个创始人.

  1. $_config['admincp']['checkip']             = 1;           // 后台管理操作是否验证管理员的 IP, 1=是 [安全], 0=否。仅在管理员无法登陆后台时设置 0 。

默认情况下值为 1, 通常情况下设置为 1 是比较安全的, 如果您的网络情况比较复杂, 如接入公网的 IP 不固定等情况, 导致无法登录后台或者登录后台时不时的被弹出到登录后台页面. 可以将这个值改为 0, 这样登录后就不再验证 IP.

  1. $_config['admincp']['runquery']                 = 1;           // 是否允许后台运行 SQL 语句 1=是 0=否 [安全]

默认情况下值为 1, 您的论坛程序在安装完成后登录后台会有一个提示, 你开启了
运行 SQL 语句
功能。建议你只有在十分必要的时候才开启此它。请修改 config/config_global.php 关闭此功能. 这里说的就是这个设置, 这个设置非常方便站长在后台执行某些 SQL 语句, 但是同时也增加了一定的不安全因素, 可以考虑关闭这个设置.

Discuz! 打开调试的方法

Discuz! X 版本可以编辑./source/class/class_core.php 文件, 在 79 行左右找到

  1. error_reporting(E_ERROR);

修改为

  1. error_reporting(E_ERROR|E_ALL);

Discuz! 7.2 以及之前版本可以打开./include/common.inc.php, 在第九行左右找到

  1. error_reporting(0);

修改为

  1. error_reporting(7);

这个功能主要用于调试空白页的错误, 当您的 Discuz! 站点在某一页出现空白页时可以优先通过这个方式排查.