為了獲取更多最新內(nèi)容及功能更新,請(qǐng)直接訪(fǎng)問(wèn)我們的首頁(yè)以查看DzzOffice筆記的最新地址。
1、禁止長(zhǎng)期放置phpinfo等探針,phpmyadmin等管理程序,需要的時(shí)候放置,并在使用完畢后移至非站點(diǎn)目錄。
2、禁止在運(yùn)行的站點(diǎn)內(nèi)放置測(cè)試程序,備份目錄如bak,old文件夾一律移到非站點(diǎn)目錄。
3、禁止放置install文件夾,以及upgrade、index 相關(guān)安裝和升級(jí)文件。
4、禁止目錄下出現(xiàn)編輯器編輯后自動(dòng)生成的備份文件。
5、打包站點(diǎn)得來(lái)的zip,tar.gz,tar文件,一律不能放到站點(diǎn)目錄下。
6、除config/、data/目錄外,其他目錄設(shè)置成root權(quán)限,禁止其他用戶(hù)組修改。
7、設(shè)置禁止訪(fǎng)問(wèn)config/、data/目錄下的php文件。
文件:/config/config.php問(wèn):數(shù)據(jù)庫(kù)密碼問(wèn)了怎么辦?怎么修改數(shù)據(jù)庫(kù)密碼?下面將為您介紹在 /config/config.php
文件中的各項(xiàng)配置,包括數(shù)據(jù)庫(kù)、內(nèi)存服務(wù)器優(yōu)化、服務(wù)器、頁(yè)面輸出、站點(diǎn)安全等方面的設(shè)置。
// CONFIG DB
// 數(shù)據(jù)庫(kù)相關(guān)設(shè)置
/**
* 數(shù)據(jù)庫(kù)主服務(wù)器設(shè)置, 支持多組服務(wù)器設(shè)置, 當(dāng)設(shè)置多組服務(wù)器時(shí), 則會(huì)根據(jù)分布式策略使用某個(gè)服務(wù)器。這樣可以提高數(shù)據(jù)庫(kù)的可用性和負(fù)載能力。
* @example
* $_config['db']['1']['dbhost'] = 'localhost'; // 服務(wù)器地址
* $_config['db']['1']['dbuser'] = 'root'; // 用戶(hù)
* $_config['db']['1']['dbpw'] = '';// 密碼
* $_config['db']['1']['dbcharset'] = 'gbk';// 字符集
* $_config['db']['1']['pconnect'] = '0';// 是否持續(xù)連接
* $_config['db']['1']['dbname'] = 'x1';// 數(shù)據(jù)庫(kù)
* $_config['db']['1']['tablepre'] = 'pre_';// 表名前綴
*
* $_config['db']['2']['dbhost'] = 'localhost';
* ...
*/
$_config['db'][1]['dbhost'] = 'localhost';//支持三種直接加端口如:127.0.0.1:3306或使用UNix socket 如:/tmp/mysql.sock
$_config['db'][1]['dbuser'] = 'root';
$_config['db'][1]['dbpw'] = 'root';
$_config['db'][1]['dbcharset'] = 'utf8';
$_config['db'][1]['pconnect'] = 0;
$_config['db'][1]['dbname'] = 'dzzoffice';
$_config['db'][1]['tablepre'] = 'dzz_';
$_config['db'][1]['port'] = '3306';//mysql端口
$_config['db'][1]['unix_socket'] = '';//使用此方式連接時(shí) dbhost設(shè)置為localhost
/**
* 數(shù)據(jù)庫(kù)從服務(wù)器設(shè)置( slave, 只讀 ), 支持多組服務(wù)器設(shè)置, 當(dāng)設(shè)置多組服務(wù)器時(shí), 系統(tǒng)根據(jù)每次隨機(jī)使用。這樣可以提高數(shù)據(jù)庫(kù)的讀性能,同時(shí)保證數(shù)據(jù)的一致性。
* @example
* $_config['db']['1']['slave']['1']['dbhost'] = 'localhost';
* $_config['db']['1']['slave']['1']['dbuser'] = 'root';
* $_config['db']['1']['slave']['1']['dbpw'] = 'root';
* $_config['db']['1']['slave']['1']['dbcharset'] = 'gbk';
* $_config['db']['1']['slave']['1']['pconnect'] = '0';
* $_config['db']['1']['slave']['1']['dbname'] = 'x1';
* $_config['db']['1']['slave']['1']['tablepre'] = 'pre_';
* $_config['db']['1']['slave']['1']['weight'] = '0'; //權(quán)重:數(shù)據(jù)越大權(quán)重越高
*
* $_config['db']['1']['slave']['2']['dbhost'] = 'localhost';
* ...
*
*/
$_config['db']['1']['slave'] = array();
//啟用從服務(wù)器的開(kāi)關(guān)。這樣可以在需要時(shí)啟用從服務(wù)器,提高數(shù)據(jù)庫(kù)的讀性能。
$_config['db']['slave'] = false;
/**
* 數(shù)據(jù)庫(kù) 分布部署策略設(shè)置。通過(guò)設(shè)置不同的部署策略,可以實(shí)現(xiàn)數(shù)據(jù)庫(kù)的負(fù)載均衡和高可用性。
*
* @example 將 user 部署到第二服務(wù)器, session 部署在第三服務(wù)器, 則設(shè)置為
* $_config['db']['map']['user'] = 2;
* $_config['db']['map']['session'] = 3;
*
* 對(duì)于沒(méi)有明確聲明服務(wù)器的表, 則一律默認(rèn)部署在第一服務(wù)器上。這樣可以確保沒(méi)有明確指定的表不會(huì)被遺漏,保證數(shù)據(jù)的一致性。
*
*/
$_config['db']['map'] = array();
/**
* 數(shù)據(jù)庫(kù) 公共設(shè)置, 此類(lèi)設(shè)置通常對(duì)針對(duì)每個(gè)部署的服務(wù)器。這些設(shè)置包括數(shù)據(jù)庫(kù)的字符集、時(shí)區(qū)等公共配置,適用于所有部署的服務(wù)器。
*/
$_config['db']['common'] = array();
/**
* 禁用從數(shù)據(jù)庫(kù)的數(shù)據(jù)表, 表名字之間使用逗號(hào)分割。這樣可以防止從數(shù)據(jù)庫(kù)的表被誤操作,保證數(shù)據(jù)的安全。
*
* @example session, user 這兩個(gè)表僅從主服務(wù)器讀寫(xiě), 不使用從服務(wù)器。這樣可以確保數(shù)據(jù)的一致性,同時(shí)避免從服務(wù)器的負(fù)載過(guò)高。
* $_config['db']['common']['slave_except_table'] = 'session, user';
*
*/
$_config['db']['common']['slave_except_table'] = '';
// CONFIG MEMORY
// 內(nèi)存服務(wù)器優(yōu)化設(shè)置
/**
* 以下設(shè)置需要PHP擴(kuò)展組件支持,其中 memcache 優(yōu)先于其他設(shè)置,
* 當(dāng) memcache 無(wú)法啟用時(shí),會(huì)自動(dòng)開(kāi)啟另外的兩種優(yōu)化模式,
* 這樣可以確保內(nèi)存服務(wù)器的優(yōu)化設(shè)置生效,提高系統(tǒng)的性能。
*/
//內(nèi)存變量前綴, 可更改,避免同服務(wù)器中的程序引用錯(cuò)亂。這樣可以避免內(nèi)存變量被其他程序誤引用,保證系統(tǒng)的穩(wěn)定性。
$_config['memory']['prefix'] = 'dzzoffice_';
/* reids設(shè)置, 需要PHP擴(kuò)展組件支持, timeout參數(shù)的作用沒(méi)有查證。這樣可以確保 Redis 緩存的正確配置,提高系統(tǒng)的性能。*/
$_config['memory']['redis']['server'] = '';
$_config['memory']['redis']['port'] = 6379;
$_config['memory']['redis']['pconnect'] = 1;
$_config['memory']['redis']['timeout'] = 0;
$_config['memory']['redis']['requirepass'] = '';//如果redis需要密碼,請(qǐng)?zhí)顚?xiě)redis密碼
/**
* 是否使用 Redis::SERIALIZER_IGBINARY選項(xiàng),需要igbinary支持,windows下測(cè)試時(shí)請(qǐng)關(guān)閉,否則會(huì)出>現(xiàn)錯(cuò)誤Reading from client: Connection reset by peer
* 這樣可以確保 Redis 序列化的正確性,提高系統(tǒng)的穩(wěn)定性。
* 支持以下選項(xiàng),默認(rèn)使用PHP的serializer
* Redis::SERIALIZER_IGBINARY =2
* Redis::SERIALIZER_PHP =1
* Redis::SERIALIZER_NONE =0 //則不使用serialize,即無(wú)法保存array
*/
$_config['memory']['redis']['serializer'] = 1;
$_config['memory']['memcache']['server'] = '127.0.0.1'; // memcache 服務(wù)器地址
$_config['memory']['memcache']['port'] = 11211; // memcache 服務(wù)器端口
$_config['memory']['memcache']['pconnect'] = 1; // memcache 是否長(zhǎng)久連接
$_config['memory']['memcache']['timeout'] = 1; // memcache 服務(wù)器連接超時(shí)
$_config['memory']['memcached']['server'] = '127.0.0.1'; // memcached 服務(wù)器地址
$_config['memory']['memcached']['port'] = 11211; // memcached 服務(wù)器端口
$_config['memory']['memcached']['pconnect'] = 1; // memcached 是否長(zhǎng)久連接
$_config['memory']['memcached']['timeout'] = 1; // memcached 服務(wù)器連接超時(shí)
$_config['memory']['apc'] = 1; // 啟動(dòng)對(duì) apc 的支持
$_config['memory']['xcache'] = 1; // 啟動(dòng)對(duì) xcache 的支持
$_config['memory']['eaccelerator'] = 0; // 啟動(dòng)對(duì) eaccelerator 的支持
$_config['memory']['wincache'] = 1; // 啟動(dòng)對(duì) wincache 的支持
// CONFIG SERVER
// 服務(wù)器相關(guān)設(shè)置
$_config['server']['id'] = 1; // 服務(wù)器編號(hào),多webserver的時(shí)候,用于標(biāo)識(shí)當(dāng)前服務(wù)器的ID。這樣可以方便地進(jìn)行服務(wù)器管理,提高系統(tǒng)的可維護(hù)性。
// CONFIG CACHE
// 緩存設(shè)置
$_config['cache']['type'] = 'sql'; // 緩存類(lèi)型 file=文件緩存, sql=數(shù)據(jù)庫(kù)緩存
// CONFIG OUTPUT
// 頁(yè)面輸出設(shè)置
$_config['output']['charset'] = 'utf-8'; // 頁(yè)面字符集。這樣可以確保頁(yè)面的字符集正確,避免亂碼問(wèn)題。
$_config['output']['forceheader'] = 1; // 強(qiáng)制輸出頁(yè)面字符集,用于避免某些環(huán)境亂碼。這樣可以確保頁(yè)面字符集的一致性,提高用戶(hù)體驗(yàn)。
$_config['output']['gzip'] = 0; // 是否采用 Gzip 壓縮輸出。這樣可以減少頁(yè)面加載時(shí)間,提高用戶(hù)體驗(yàn)。
$_config['output']['tplrefresh'] = 1; // 模板自動(dòng)刷新開(kāi)關(guān) 0=關(guān)閉, 1=打開(kāi)
$_config['output']['language'] = 'zh-cn'; // 頁(yè)面語(yǔ)言 zh-cn/zh-tw。這樣可以設(shè)置頁(yè)面語(yǔ)言,提高用戶(hù)體驗(yàn)。
$_config['output']['language_list']['zh-cn']='簡(jiǎn)體中文'; // 頁(yè)面語(yǔ)言 zh-CN/en-US
$_config['output']['language_list']['en-US']='English'; // 頁(yè)面語(yǔ)言 zh-CN/en-US
$_config['output']['staticurl'] = 'static/'; // 站點(diǎn)靜態(tài)文件路徑,“/”結(jié)尾
$_config['output']['ajaxvalidate'] = 0; // 是否嚴(yán)格驗(yàn)證 Ajax 頁(yè)面的真實(shí)性 0=關(guān)閉,1=打開(kāi)
$_config['output']['iecompatible'] = 0; // 頁(yè)面 IE 兼容模式
//CONFIG COOKIE
// COOKIE 設(shè)置
$_config['cookie']['cookiepre'] = 'dzzoffice_'; // COOKIE前綴
$_config['cookie']['cookiedomain'] = ''; // COOKIE作用域
$_config['cookie']['cookiepath'] = '/'; // COOKIE作用路徑
// CONFIG SECURITY
// 站點(diǎn)安全設(shè)置
$_config['security']['authkey'] = 'dzzoffice'; // 站點(diǎn)加密密鑰。這樣可以確保站點(diǎn)的數(shù)據(jù)安全,防止數(shù)據(jù)泄露。
$_config['security']['urlxssdefend'] = true; // 自身 URL XSS 防御。這樣可以防止 XSS 攻擊,提高站點(diǎn)的安全性。
$_config['security']['attackevasive'] = 0; // CC 攻擊防御 1|2|4|8。這樣可以防止 CC 攻擊,提高站點(diǎn)的可用性。
$_config['security']['querysafe']['status'] = 1; // 是否開(kāi)啟SQL安全檢測(cè),可自動(dòng)預(yù)防SQL注入攻擊。這樣可以防止 SQL 注入攻擊,提高站點(diǎn)的安全性。
$_config['security']['querysafe']['dfunction'] = array('load_file','hex','substring','if','ord','char');
$_config['security']['querysafe']['daction'] = array('@','intooutfile','intodumpfile','unionselect','(select', 'unionall', 'uniondistinct');
$_config['security']['querysafe']['dnote'] = array('/*','*/','#','--','"');
$_config['security']['querysafe']['dlikehex'] = 1;
$_config['security']['querysafe']['afullnote'] = 0;
// CONFIG ADMINCP
// 站點(diǎn)創(chuàng)始人設(shè)置
$_config['admincp']['founder'] = '1'; // 站點(diǎn)創(chuàng)始人:擁有站點(diǎn)管理后臺(tái)的最高權(quán)限,每個(gè)站點(diǎn)可以設(shè)置 1名或多名創(chuàng)始人。這樣可以確保站點(diǎn)的安全管理,防止未經(jīng)授權(quán)的訪(fǎng)問(wèn)和操作??梢允褂胾id,也可以使用用戶(hù)名;多個(gè)創(chuàng)始人之間請(qǐng)使用逗號(hào)“,”分開(kāi);
// CONFIG USERLOGIN
// 用戶(hù)相關(guān)設(shè)置
$_config['admincp']['checkip'] = 1; // 后臺(tái)管理操作是否驗(yàn)證管理員的 IP, 1=是[安全], 0=否。僅在管理員無(wú)法登錄后臺(tái)時(shí)設(shè)置 0。這樣可以提高后臺(tái)管理的安全性,防止非法訪(fǎng)問(wèn)。
$_config['admincp']['runquery'] = 0; // 是否允許后臺(tái)運(yùn)行 SQL 語(yǔ)句 1=是 0=否[安全]。這樣可以確保后臺(tái)操作的安全性,防止誤操作導(dǎo)致的數(shù)據(jù)丟失或泄露。
$_config['admincp']['dbimport'] = 0; // 是否允許后臺(tái)恢復(fù)網(wǎng)站數(shù)據(jù) 1=是 0=否[安全]。這樣可以確保后臺(tái)操作的安全性,防止誤操作導(dǎo)致的數(shù)據(jù)丟失或泄露。
$_config['userlogin']['checkip'] = 1; //用戶(hù)登錄錯(cuò)誤驗(yàn)證ip,對(duì)于同一ip同時(shí)使用時(shí)建議設(shè)置為0,否則當(dāng)有一位用戶(hù)登錄錯(cuò)誤次數(shù)超過(guò)5次,該ip被鎖定15分鐘,導(dǎo)致其他的同IP用戶(hù)無(wú)法登錄。這樣可以防止惡意登錄嘗試,提高站點(diǎn)的安全性。
//$_config['system_os'] = 'linux'; //windows,linux,mac,系統(tǒng)會(huì)自動(dòng)判斷。這樣可以確保操作系統(tǒng)編碼的正確設(shè)置,提高系統(tǒng)的穩(wěn)定性。
//$_config['system_charset']='utf-8'; //操作系統(tǒng)編碼,不設(shè)置系統(tǒng)將根據(jù)操作系統(tǒng)類(lèi)型來(lái)判斷l(xiāng)inux:utf-8;windows:gbk。這樣可以確保操作系統(tǒng)的字符集設(shè)置正確,提高系統(tǒng)的穩(wěn)定性。
更多建議: