normal.php

    1. <?php
    2. /* * *********************************************************
    3. * [cmlphp] (C)2012 - 3000 http://cmlphp.com
    4. * @Author linhecheng<linhechengbush@live.com>
    5. * @Date: 14-2-21 下午2:23
    6. * @version @see \Cml\Cml::VERSION
    7. * cmlphp框架惯例配置文件
    8. * *********************************************************** */
    9. return [
    10. //调试模式 默认关闭
    11. 'debug' => false,
    12. 'db_fields_cache' => true, //在debug模式实时获取字段列表,线上模式是否开启数据库字段缓存到文件。自v2.6.3起。开启本功能主要用于获取主键缓存
    13. 'time_zone' => 'PRC', //时区
    14. //数据库配置
    15. 'default_db' => [
    16. 'driver' => 'Pdo', //数据库驱动
    17. 'master' => [
    18. 'host' => 'localhost', //数据库主机
    19. 'username' => 'root', //数据库用户名
    20. 'password' => '', //数据库密码
    21. 'dbname' => 'cmlphp', //数据库名
    22. 'charset' => 'utf8mb4', //数据库编码
    23. 'tableprefix' => 'sun_', //数据表前缀
    24. 'pconnect' => false, //是否开启数据库长连接
    25. 'engine' => ''//数据库引擎
    26. ],
    27. 'slaves'=>[],
    28. //查询数据缓存时间,表数据有变动会自动更新缓存。设置为0表示表数据没变动时缓存不过期。
    29. //这边设置为3600意思是即使表数据没变动也让缓存每3600s失效一次,这样可以让缓存空间更合理的利用.
    30. //如果不想启用缓存直接配置为false
    31. 'cache_expire' => 3600,
    32. //是否记录执行慢的sql语句。只针对mysql有效。这个不能长期开,只能要分析sql性能的时候比如只开个5会钟有一定的log后就应该关掉。默认为false。
    33. //为整形的时候则为执行时间大于这个时间的sql都记录到log下 比如配置为1则为执行超过1s的sql都记录到 notice.log里
    34. 'log_slow_sql' => false,
    35. ],
    36. /**
    37. 使用MongoDB
    38. 'db_mongo' => [
    39. 'driver' => 'MongoDB', //数据库驱动
    40. 'master' => [
    41. 'host' => 'localhost:27017',
    42. 'username' => '',
    43. 'password' => '',
    44. 'dbname' => 'test',
    45. //'replicaSet' => '' //replicaSet名称
    46. ],
    47. 'slaves'=>[],
    48. ],
    49. **/
    50. // 缓存服务器的配置
    51. 'default_cache' => [
    52. 'driver' => 'Memcache',
    53. 'prefix' => 'cml_',
    54. 'server' => [
    55. 'host' => '127.0.0.1',
    56. 'port' => 11211,//必须是整形
    57. //'weight' => 100 //权重memcached扩展有效
    58. ],
    59. //多台...
    60. ],
    61. ],
    62. /**
    63. //文件缓存
    64. 'default_cache' => [
    65. 'on' => 0, //为1则启用,或者不启用
    66. 'driver' => 'File',
    67. 'prefix' => 'cml_'
    68. ],
    69. //apc缓存
    70. 'default_cache' => [
    71. 'on' => 0, //为1则启用,或者不启用
    72. 'driver' => 'Apc',
    73. 'prefix' => 'cml_'
    74. ],
    75. //Redis缓存
    76. 'default_cache' => [
    77. 'on' => 0, //为1则启用,或者不启用
    78. 'driver' => 'Redis',
    79. 'prefix' => 'cml_',
    80. 'server' => [
    81. [
    82. 'host' => '127.0.0.1',
    83. 'port' => 6379,
    84. //'pconnect' => false //默认使用长连接
    85. //'db' => 6
    86. //'password' => '123456' //没有密码的时候不要配置
    87. ],
    88. //多台...
    89. ],
    90. //'back' => [//当server中有机器挂掉且back有开启时。会自动使用back来替换挂掉的server方便处理异常情况
    91. // 'host' => '127.0.0.1',
    92. // 'port' => 6379
    93. //]
    94. ],
    95. */
    96. /*模板设置*/
    97. 'view_render_engine' => 'html',//默认的视图渲染引擎,html/excel/json/xml
    98. 'default_charset' => 'utf-8', // 默认输出编码
    99. 'http_cache_control' => 'private', // 网页缓存控制
    100. 'output_encode' => true, // 页面压缩输出
    101. /*Html引擎配置。只适用于html模板引擎*/
    102. 'html_theme' =>'', //默认只有单主题
    103. 'html_template_suffix' => '.html', // 默认模板文件后缀
    104. 'html_left_deper' => '{{', //模板左定界符
    105. 'html_right_deper' => '}}', //模板右定界符
    106. /*系统模板定义*/
    107. 'html_exception' => CML_CORE_PATH.'/Tpl/cmlException.tpl', // 默认成功跳转对应的模板文件
    108. '404_page' => CML_CORE_PATH.'/Tpl/404.tpl', // 404跳转页
    109. 'debug_page' => CML_CORE_PATH.'/Tpl/debug.tpl', // debug调试信息模板
    110. /* URL设置 */
    111. // 1 (PATHINFO 模式显示index.php); 2 (PATHINFO 不显示index.php); 3 (兼容模式) 默认为PATHINFO 模式,提供最好的用户体验和SEO支持
    112. 'url_html_suffix' => '.html', // URL伪静态后缀设置
    113. 'url_default_action' => 'web/Default/index', //默认操作
    114. 'var_pathinfo' => 'r', // PATHINFO 兼容模式获取变量例如 ?r=/module/action/id/1中的s ,后面的分隔符/取决于url_pathinfo_depr
    115. //'static__path' => 'http://static.cml.com/', //模板替换的{{public}}静态地址(访问静态资源用) 默认为 入口文件所在目录
    116. /*安全过滤*/
    117. 'auth_key'=>'a5et3e41d', //Encry加密key
    118. 'check_csrf' => 1, //检查csrf跨站攻击 0、不检查,1、只检查post数据提交方式,2、get/post都检查 默认只检查post
    119. 'form_token'=> 0, //表单令牌 0不开启,1开启
    120. /*语言包设置*/
    121. 'lang' =>'zh-cn', //读取zh-cn.php文件
    122. /*cookie设置*/
    123. 'cookie_prefix'=> 'cml_', //cookie前缀
    124. 'cookie_expire' => 0, // Coodie有效期
    125. 'cookie_domain' => '', // Cookie有效域名
    126. 'cookie_path' => '/', // Cookie路径
    127. 'userauthid' => 'CmlUserAuth', //用户登录成功之后的cookie标识
    128. /*Session设置*/
    129. 'session_prefix' => 'cml_', //session前缀
    130. 'session_user' => 0, //SESSION保存位置自定义 0不开启、1开启
    131. 'session_user_loc' => 'db', //自定义保存SESSION的位置时 定义保存的位置 db、cache两种
    132. 'session_user_loc_table' => 'session', //自定义保存SESSION的保存位置设置为db时的表名
    133. 'session_user_loc_tableprefix' => 'cml_', //自定义保存SESSION的保存位置设置为db时的表前缀
    134. /**锁配置**/
    135. 'lock_prefix' => 'cml_',
    136. 'locker_use_cache' => 'default_cache', //上锁使用的缓存
    137. /**日志配置**/
    138. 'log_warn_log' => false, //警告级别的日志默认不记录
    139. 'log_prefix' => 'cml_log', //会显示到日志内容中,同时当以redis为驱动的时候会做为队列的前缀
    140. //Log类使用redis为驱动时使用的缓存配置key
    141. 'redis_log_use_cache' => 'default_cache',//只有在该缓存的驱动为redis的时候才有效,否则会报错
    142. /**队列配置**/
    143. //Redis队列使用的缓存
    144. 'redis_queue_use_cache' => 'default_cache',//只有在该缓存的驱动为redis的时候才有效,否则会报错
    145. /*系统路由-统一用小写url*/
    146. 'cmlframework_system_route' => [
    147. 'cmlframeworkstaticparse' => '\\Cml\\Tools\\StaticResource::parseResourceFile'
    148. ],
    149. 'static_file_version' => 'v1', //开发模式会自动在静态文件后加时间缀,实时过期,线上模板版本号固定,如有需要在这里改版本号强制过期
    150. /*php-console配置*/
    151. 'dump_use_php_console' => false, //开启本功能需要先安装php-console composer require php-console/php-console ~3.0
    152. 'php_console_password' => 'cmlphp_php_console_pw123456',
    153. /**
    154. * 是否开启全局紧急模式--慎用。主要用于在系统mysql负载过高(如遇到攻击)mysql压力过大。先将所有查询转移至缓存。消化压力高峰
    155. *
    156. * 开启时 mysql的查询缓存不会在数据变更时实时更新。
    157. * 所以如果要开启请确定开启后不会对业务造成影响。如:扣积分前的查询积分数,这种对数据实时要求高的,在开启本模式时要做下判断并屏蔽。
    158. */
    159. 'emergency_mode_not_real_time_refresh_mysql_query_cache' => false, //配置成int型则为缓存刷新周期。如配置成 300 则为数据变更时每五分钟更新一次mysql查询缓存
    160. 'var_page' => 'page', //分页时传递当前页数的变量名
    161. 'route_app_hierarchy' => 1, //路由找控制器的时候遍历应用目录的层级,默认为1
    162. ];