2019-01-15 02:02:28 +00:00
|
|
|
<?php
|
|
|
|
|
2019-12-04 10:45:28 +00:00
|
|
|
$settings = [
|
|
|
|
'site' => [
|
|
|
|
'version' => '0.2.2',
|
|
|
|
'scheduler_addr' => 'http://127.0.0.1',
|
|
|
|
'base_url' => 'http://127.0.0.1', /* make absolute url for SEO and avoid hijack, no '/' at the end */
|
|
|
|
'timezone' => 'Asia/Shanghai',
|
|
|
|
],
|
|
|
|
'mysql' => [
|
|
|
|
'host' => 'localhost',
|
|
|
|
'port' => 3306,
|
|
|
|
'database' => 'yao',
|
|
|
|
'user' => 'root', /* It is not recommended to use `root` in production environment */
|
|
|
|
'password' => '',
|
|
|
|
'show_error' => false, /* set to true to see detailed Mysql errors __only__ for debug purpose */
|
|
|
|
],
|
|
|
|
'redis' => [ /* Make sure that your Redis only listens to Intranet */
|
|
|
|
'scheme' => 'tcp',
|
|
|
|
'host' => 'localhost',
|
|
|
|
'port' => 6379,
|
|
|
|
'show_error' => false, /* set to true to see detailed Redis errors __only__ for debug purpose */
|
|
|
|
],
|
|
|
|
'oauth' => [
|
|
|
|
'site' => 'https://quickauth.newnius.com',
|
|
|
|
'client_id' => 'XgaII6NxeE08LtKB',
|
|
|
|
'client_secret' => 'L9hdi4dQToM0GsDLtcYYQ3k4ZDEjuGVOtPS3nOVKlo6cxLcVjH9TqvmTBiHAgLp2',
|
|
|
|
]
|
|
|
|
];
|
2019-01-15 02:02:28 +00:00
|
|
|
|
|
|
|
|
2019-12-04 10:45:28 +00:00
|
|
|
foreach ($settings as $category => $values) {
|
|
|
|
foreach ($values as $option => $value) {
|
|
|
|
$env = getenv(strtoupper($category . '_' . $option));
|
|
|
|
if ($env !== false) {
|
|
|
|
$settings[$category][$option] = $env;
|
|
|
|
};
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
define('YAO_VERSION', strval($settings['site']['version']));
|
|
|
|
|
|
|
|
define('YAO_SCHEDULER_ADDR', strval($settings['site']['scheduler_addr']));
|
2019-01-15 02:02:28 +00:00
|
|
|
|
|
|
|
/* Mysql */
|
2019-12-04 10:45:28 +00:00
|
|
|
define('DB_HOST', strval($settings['mysql']['host']));
|
|
|
|
define('DB_PORT', intval($settings['mysql']['port']));
|
|
|
|
define('DB_NAME', strval($settings['mysql']['database']));
|
|
|
|
define('DB_USER', strval($settings['mysql']['user']));
|
|
|
|
define('DB_PASSWORD', strval($settings['mysql']['password']));
|
|
|
|
define('DB_SHOW_ERROR', boolval($settings['mysql']['show_error']));
|
2019-01-15 02:02:28 +00:00
|
|
|
|
|
|
|
/* Redis */
|
2019-12-04 10:45:28 +00:00
|
|
|
define('REDIS_SCHEME', strval($settings['redis']['scheme']));
|
|
|
|
define('REDIS_HOST', strval($settings['redis']['host']));
|
|
|
|
define('REDIS_PORT', intval($settings['redis']['port']));
|
|
|
|
define('REDIS_SHOW_ERROR', boolval($settings['redis']['show_error']));
|
2019-01-15 02:02:28 +00:00
|
|
|
|
|
|
|
/* Site */
|
2019-12-04 10:45:28 +00:00
|
|
|
define('BASE_URL', strval($settings['site']['base_url']));
|
2019-01-15 02:02:28 +00:00
|
|
|
define('WEB_ROOT', __DIR__);
|
2019-12-04 10:45:28 +00:00
|
|
|
define('FEEDBACK_EMAIL', 'mail@example.com');
|
2019-01-15 02:02:28 +00:00
|
|
|
|
|
|
|
/* Auth */
|
|
|
|
define('AUTH_CODE_TIMEOUT', 300); // 5 min
|
|
|
|
define('AUTH_TOKEN_TIMEOUT', 604800); // 7 day
|
|
|
|
|
|
|
|
/* Session */
|
|
|
|
define('ENABLE_MULTIPLE_LOGIN', true);
|
|
|
|
define('BIND_SESSION_WITH_IP', false); // current session will be logged when ip changes
|
|
|
|
define('SESSION_TIME_OUT', 1800);// 30 minutes 30*60=1800
|
|
|
|
define('ENABLE_COOKIE', true);
|
|
|
|
|
|
|
|
/* Rate Limit */
|
|
|
|
define('ENABLE_RATE_LIMIT', false);
|
|
|
|
define('RATE_LIMIT_PREFIX', 'rl');
|
|
|
|
|
|
|
|
/* OAuth */
|
|
|
|
/* The default conf is only usable when this runs on localhost */
|
2019-12-04 10:45:28 +00:00
|
|
|
define('OAUTH_SITE', strval($settings['oauth']['site']));
|
|
|
|
define('OAUTH_CLIENT_ID', strval($settings['oauth']['client_id']));
|
|
|
|
define('OAUTH_CLIENT_SECRET', strval($settings['oauth']['client_secret']));
|
2019-01-15 02:02:28 +00:00
|
|
|
|
|
|
|
header("content-type:text/html; charset=utf-8");
|
|
|
|
|
2019-12-04 10:45:28 +00:00
|
|
|
date_default_timezone_set(strval($settings['site']['timezone']));
|