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