手抄报 安全手抄报 手抄报内容 手抄报图片 英语手抄报 清明节手抄报 节约用水手抄报

类discuz_application中_init_config方法

时间:2024-10-12 03:10:24

1、$_config = array();@include DISCUZ_ROOT.'./config/config_global.php'; 加载配置文件,config文件夹下面有配置config_global_default.php。如果没看源代码小编还以为config_global_default.php是配置文件,config_global.php是备份文件呢。配置文件第一句就是$_config = array();,方法第一句定义了,配置文件也定义了,下面解释。

2、if(empty($_config)){ if(!file_exists(DISCUZ_ROOT.'./data/install.lock')) { header('location: install'); exit; } else { system_error('config_notfound'); }} $_config数组配置文件是否为空,这儿只判断为空,而不判断是否存在,因为开头第一句代码已经定义了$_config = array()。 file_exists(DISCUZ_ROOT.'./data/install.lock')是否有install.lock,有表示正常安装,没表示不正常安装。 源代码包config下有config_global_default.php,安装成功后有config_global.php文件。 函数system_error以后再说。

3、if(empty($娄多骋能_config['security']['authkey'])) { $_config['security']['稆糨孝汶;authkey']=md5($_config['cookie']['cookiepre'].$_config['db'][1]['dbname']);} 密钥,这儿加密方式和刚开始安装install不同。$authkey = substr(md5($_SERVER['SERVER_ADDR'].$_SERVER['HTTP_USER_AGENT'].$dbhost.$dbuser.$dbpw.$dbname.$username.$password.$pconnect.substr($timestamp, 0, 6)), 8, 6).random(10);authkey算法存在安全漏洞,漏洞在Discuz_X3.4中被修复。

4、if(empty($_config['debug']) || !file_exists(libfile('function/debug'))) { define('DISCUZ_DEBUG', false); error_reporting(0);} $_config['debug'],libfile('function/debug')小编这儿都不存在,执行if体。error_reporting(0);禁用错误报告。

5、define('STATICURL',!empty($_config['output']['staticurl'])?$_config['output']['staticurl'] : 'static/');$this->var['staticurl'] = STATICURL; staticurl,静态路径,不是完整路径,仅仅是static/。里面放的都是css,js,图片。

6、$this->config = & $_config;$this->var['config'] = & $_config; $_config地址复制给属性。这儿干嘛赋值给两个属性呀?

7、if(substr(铮喘饿怊$_config['cookie']['cookiepath'], 0, 1) != '/') { $this->var['config']['cookie']['cookiepath']='/'.$this->var['config']['cookie']['cookiepath'];} cookiepath有效的服务器路径。 设置成'/'时,Cookie 对整个域名domain有效。 如果设置成'/foo/', Cookie 仅仅对domain中/foo/目录及其子目录有效。 测试一下,配置文件config_global.php中$_config['cookie']['cookiepath'] = 'test';$this->var['config']['cookie']['cookiepath']=’/test’;

© 手抄报圈