core: add xhost config

This commit is contained in:
undefined committed 2021-04-21 22:42:52 +08:00
1 parent 3b4d4c0380
commit 31f7d9a643
4 files changed
+5 -2

No files matched your search

+1 -1
View File
@@ -1,6 +1,6 @@
{
"name": "hydrooj",
"version": "2.23.14",
"version": "2.23.15",
"bin": "bin/hydrooj.js",
"main": "dist/loader.js",
"typings": "dist/loader.d.ts",
+1
View File
@@ -31,6 +31,7 @@ export interface SystemKeys {
'server.name': string,
'server.url': string,
'server.xff': string,
'server.xhost': string,
'server.worker': number,
'server.port': number,
'server.language': string,
+1
View File
@@ -159,6 +159,7 @@ SystemSetting(
Setting('setting_server', 'server.cdn', '/', 'text', 'server.cdn', 'CDN Prefix'),
Setting('setting_server', 'server.port', 8888, 'number', 'server.port', 'Server Port'),
Setting('setting_server', 'server.xff', null, 'text', 'server.xff', 'IP Header'),
Setting('setting_server', 'server.xhost', null, 'text', 'server.xhost', 'Hostname Header'),
Setting('setting_server', 'server.language', 'zh_CN', langRange, 'server.language', 'Default display language'),
Setting('setting_server', 'server.login', true, 'boolean', 'server.login', 'Allow builtin-login'),
Setting('setting_basic', 'default.priv', builtin.PRIV.PRIV_DEFAULT, 'number', 'default.priv', 'Default Privilege'),
+2 -1
View File
@@ -443,8 +443,9 @@ export class Handler extends HandlerCommon {
this.UiContext = cloneDeep(UiContextBase);
this.UiContext.cdn_prefix = system.get('server.cdn');
this.session = {};
const xff = system.get('server.xff');
const [xff, xhost] = system.getMany(['server.xff', 'server.xhost']);
if (xff) this.request.ip = this.request.headers[xff.toLowerCase()] || this.request.ip;
if (xhost) this.request.hostname = this.request.headers[xhost.toLowerCase()] || this.request.hostname;
this.noCheckPermView = true;
}