PageRenderTime 46ms CodeModel.GetById 24ms RepoModel.GetById 0ms app.codeStats 0ms

/config/config.php

https://gitlab.com/imxieke/XCloud
PHP | 106 lines | 80 code | 9 blank | 17 comment | 3 complexity | 653e10d4ac19cf3729f7b4c75d2a54f0 MD5 | raw file
  1. <?php
  2. @date_default_timezone_set(@date_default_timezone_get());
  3. @set_time_limit(600);//10min pathInfoMuti,search,upload,download...
  4. @ini_set('session.cache_expire',600);
  5. @ini_set("display_errors","on");
  6. @error_reporting(E_ERROR|E_WARNING|E_PARSE);
  7. //error_reporting(E_ALL);
  8. function P($path){return str_replace('\\','/',$path);}
  9. $web_root = str_replace(P($_SERVER['SCRIPT_NAME']),'',P(dirname(dirname(__FILE__))).'/index.php').'/';
  10. if (substr($web_root,-10) == 'index.php/') {//解决部分主机不兼容问题
  11. $web_root = P($_SERVER['DOCUMENT_ROOT']).'/';
  12. }
  13. function is_HTTPS(){
  14. if(!isset($_SERVER['HTTPS'])){
  15. return false;
  16. }
  17. if($_SERVER['HTTPS'] === 1){ //Apache
  18. return true;
  19. }elseif($_SERVER['HTTPS'] === 'on'){ //IIS
  20. return true;
  21. }elseif($_SERVER['SERVER_PORT'] == 443){ //其他
  22. return true;
  23. }
  24. return false;
  25. }
  26. define('WEB_ROOT',$web_root);
  27. define('HOST', (is_HTTPS() ? 'https://' :'http://').$_SERVER['HTTP_HOST'].'/');
  28. define('BASIC_PATH', P(dirname(dirname(__FILE__))).'/');
  29. define('APPHOST', HOST.str_replace(WEB_ROOT,'',BASIC_PATH));//程序根目录
  30. define('TEMPLATE', BASIC_PATH .'template/'); //模版文件路径
  31. define('CONTROLLER_DIR',BASIC_PATH .'controller/'); //控制器目录
  32. define('MODEL_DIR', BASIC_PATH .'model/'); //模型目录
  33. define('LIB_DIR', BASIC_PATH .'lib/'); //库目录
  34. define('FUNCTION_DIR', LIB_DIR .'function/'); //函数库目录
  35. define('CLASS_DIR', LIB_DIR .'class/'); //内目录
  36. define('CORER_DIR', LIB_DIR .'core/'); //核心目录
  37. define('DATA_PATH', BASIC_PATH .'data/'); //用户数据目录
  38. define('LOG_PATH', DATA_PATH .'log/'); //日志目录
  39. define('USER_SYSTEM', DATA_PATH .'system/'); //用户数据存储目录
  40. define('DATA_THUMB', DATA_PATH .'thumb/'); //缩略图生成存放
  41. define('LANGUAGE_PATH', DATA_PATH .'i18n/'); //多语言目录
  42. define('STATIC_JS','app'); //_dev(开发状态)||app(打包压缩)
  43. define('STATIC_LESS','css');//less(开发状态)||css(打包压缩)
  44. //define('STATIC_PATH',"./static/");//静态文件目录
  45. define('STATIC_PATH','https://sf.xieke.org/Cloud/');//静态文件统分离,可单独将static部署到CDN
  46. /*
  47. 可以自定义【用户目录】和【公共目录】;移到web目录之外,
  48. 可以使程序更安全, 就不用限制用户的扩展名权限了;
  49. */
  50. define('USER_PATH', DATA_PATH .'User/'); //用户目录
  51. //自定义用户目录;需要先将data/User移到别的地方 再修改配置,例如:
  52. //define('USER_PATH', DATA_PATH .'/Library/WebServer/Documents/User');
  53. define('PUBLIC_PATH', DATA_PATH .'public/'); //公共目录
  54. //公共共享目录,读写权限跟随用户目录的读写权限 再修改配置,例如:
  55. //define('PUBLIC_PATH','/Library/WebServer/Documents/Public/');
  56. /*
  57. * office服务器配置;默认调用的微软的接口,程序需要部署到外网。
  58. * 本地部署weboffice 引号内填写office解析服务器地址 形如: http://---/view.aspx?src=
  59. */
  60. define('OFFICE_SERVER',"https://view.officeapps.live.com/op/view.aspx?src=");
  61. include(FUNCTION_DIR.'web.function.php');
  62. include(FUNCTION_DIR.'file.function.php');
  63. include(CLASS_DIR.'fileCache.class.php');
  64. include(CONTROLLER_DIR.'util.php');
  65. include(CORER_DIR.'Application.class.php');
  66. include(CORER_DIR.'Controller.class.php');
  67. include(CORER_DIR.'Model.class.php');
  68. include(FUNCTION_DIR.'common.function.php');
  69. include(BASIC_PATH.'config/setting.php');
  70. include(BASIC_PATH.'config/version.php');
  71. //数据地址定义。
  72. $config['pic_thumb'] = BASIC_PATH.'data/thumb/'; // 缩略图生成存放地址
  73. $config['cache_dir'] = BASIC_PATH.'data/cache/'; // 缓存文件地址
  74. $config['app_startTime'] = mtime(); //起始时间
  75. //系统编码配置
  76. $config['app_charset'] ='utf-8'; //该程序整体统一编码
  77. $config['check_charset'] = 'ASCII,UTF-8,GBK';//文件打开自动检测编码
  78. //when edit a file ;check charset and auto converto utf-8;
  79. if (strtoupper(substr(PHP_OS, 0,3)) === 'WIN') {
  80. $config['system_os']='windows';
  81. $config['system_charset']='gbk';//user set your server system charset
  82. } else {
  83. $config['system_os']='linux';
  84. $config['system_charset']='utf-8';
  85. }
  86. $in = parse_incoming();
  87. if(isset($in['PHPSESSID'])){//office edit post
  88. session_id($in['PHPSESSID']);
  89. }
  90. @session_start();
  91. check_post_many();
  92. session_write_close();//避免session锁定问题;之后要修改$_SESSION 需要先调用session_start()
  93. $config['autorun'] = array(
  94. array('controller'=>'user','function'=>'loginCheck'),
  95. array('controller'=>'user','function'=>'authCheck')
  96. );