diff options
| author | syuilo <Syuilotan@yahoo.co.jp> | 2018-03-26 14:15:19 +0900 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2018-03-26 14:15:19 +0900 |
| commit | ca78cbc7ebcfcbb9a8abc9647aa56aa6096ff619 (patch) | |
| tree | 52db81919b83e2bbd163434fca3e72a0ebf3af2c /src | |
| parent | Merge pull request #1291 from rinsuki/fix/using-whatwg-url-api (diff) | |
| parent | Define hostname and secondary_hostname in config (diff) | |
| download | sharkey-ca78cbc7ebcfcbb9a8abc9647aa56aa6096ff619.tar.gz sharkey-ca78cbc7ebcfcbb9a8abc9647aa56aa6096ff619.tar.bz2 sharkey-ca78cbc7ebcfcbb9a8abc9647aa56aa6096ff619.zip | |
Merge pull request #1292 from akihikodaki/config
Define hostname and secondary_hostname in config
Diffstat (limited to 'src')
| -rw-r--r-- | src/config.ts | 5 | ||||
| -rw-r--r-- | src/server.ts | 13 |
2 files changed, 8 insertions, 10 deletions
diff --git a/src/config.ts b/src/config.ts index 23feadc730..42dfd5f541 100644 --- a/src/config.ts +++ b/src/config.ts @@ -103,9 +103,11 @@ type Source = { */ type Mixin = { host: string; + hostname: string; scheme: string; ws_scheme: string; secondary_host: string; + secondary_hostname: string; secondary_scheme: string; api_url: string; ws_url: string; @@ -130,14 +132,17 @@ export default function load() { if (!isUrl(config.secondary_url)) urlError(config.secondary_url); const url = new URL(config.url); + const secondaryUrl = new URL(config.secondary_url); config.url = normalizeUrl(config.url); config.secondary_url = normalizeUrl(config.secondary_url); mixin.host = url.host; + mixin.hostname = url.hostname; mixin.scheme = url.protocol.replace(/:$/, ''); mixin.ws_scheme = mixin.scheme.replace('http', 'ws'); mixin.ws_url = `${mixin.ws_scheme}://api.${mixin.host}`; mixin.secondary_host = config.secondary_url.substr(config.secondary_url.indexOf('://') + 3); + mixin.secondary_hostname = secondaryUrl.hostname; mixin.secondary_scheme = config.secondary_url.substr(0, config.secondary_url.indexOf('://')); mixin.api_url = `${mixin.scheme}://api.${mixin.host}`; mixin.auth_url = `${mixin.scheme}://auth.${mixin.host}`; diff --git a/src/server.ts b/src/server.ts index 84e8c41489..7f66c42073 100644 --- a/src/server.ts +++ b/src/server.ts @@ -14,11 +14,6 @@ import vhost = require('vhost'); import log from './log-request'; import config from './conf'; -function extractHostname(host) { - const index = host.indexOf(':'); - return index < 0 ? host : host.substr(0, index); -} - /** * Init app */ @@ -58,11 +53,9 @@ app.use((req, res, next) => { /** * Register modules */ -const hostname = extractHostname(config.host); -const secondaryHostname = extractHostname(config.secondary_host); -app.use(vhost(`api.${hostname}`, require('./api/server'))); -app.use(vhost(secondaryHostname, require('./himasaku/server'))); -app.use(vhost(`file.${secondaryHostname}`, require('./file/server'))); +app.use(vhost(`api.${config.hostname}`, require('./api/server'))); +app.use(vhost(config.secondary_hostname, require('./himasaku/server'))); +app.use(vhost(`file.${config.secondary_hostname}`, require('./file/server'))); app.use(require('./web/server')); /** |