From bca4e5f0faf45ab227bf64a4a6b8f3793c7a79c2 Mon Sep 17 00:00:00 2001 From: syuilo Date: Sat, 6 Mar 2021 13:23:59 +0900 Subject: refactor assets --- src/server/web/index.ts | 30 +++++++++++++++++++----------- src/server/web/manifest.ts | 2 +- src/server/web/views/info.pug | 2 +- 3 files changed, 21 insertions(+), 13 deletions(-) (limited to 'src/server/web') diff --git a/src/server/web/index.ts b/src/server/web/index.ts index a1d79100a6..27fa495f8d 100644 --- a/src/server/web/index.ts +++ b/src/server/web/index.ts @@ -28,7 +28,8 @@ const markdown = MarkdownIt({ html: true }); -const client = `${__dirname}/../../client/`; +const staticAssets = `${__dirname}/../../../assets/`; +const assets = `${__dirname}/../../assets/`; // Init app const app = new Koa(); @@ -57,24 +58,31 @@ const router = new Router(); //#region static assets +router.get('/static-assets/(.*)', async ctx => { + await send(ctx as any, ctx.path.replace('/static-assets/', ''), { + root: staticAssets, + maxage: ms('7 days'), + }); +}); + router.get('/assets/(.*)', async ctx => { - await send(ctx as any, ctx.path, { - root: client, + await send(ctx as any, ctx.path.replace('/assets/', ''), { + root: assets, maxage: ms('7 days'), }); }); // Apple touch icon router.get('/apple-touch-icon.png', async ctx => { - await send(ctx as any, '/assets/apple-touch-icon.png', { - root: client + await send(ctx as any, '/apple-touch-icon.png', { + root: assets }); }); // ServiceWorker router.get('/sw.js', async ctx => { - await send(ctx as any, `/assets/sw.${config.version}.js`, { - root: client + await send(ctx as any, `/sw.${config.version}.js`, { + root: assets }); }); @@ -82,8 +90,8 @@ router.get('/sw.js', async ctx => { router.get('/manifest.json', require('./manifest')); router.get('/robots.txt', async ctx => { - await send(ctx as any, '/assets/robots.txt', { - root: client + await send(ctx as any, '/robots.txt', { + root: assets }); }); @@ -91,8 +99,8 @@ router.get('/robots.txt', async ctx => { // Docs router.get('/api-doc', async ctx => { - await send(ctx as any, '/assets/redoc.html', { - root: client + await send(ctx as any, '/redoc.html', { + root: assets }); }); diff --git a/src/server/web/manifest.ts b/src/server/web/manifest.ts index 36c901d267..a1c937703b 100644 --- a/src/server/web/manifest.ts +++ b/src/server/web/manifest.ts @@ -1,5 +1,5 @@ import * as Koa from 'koa'; -import * as manifest from '../../client/assets/manifest.json'; +import * as manifest from '../../../src/client/assets/manifest.json'; import { fetchMeta } from '../../misc/fetch-meta'; module.exports = async (ctx: Koa.Context) => { diff --git a/src/server/web/views/info.pug b/src/server/web/views/info.pug index eed69fc99e..323dce974f 100644 --- a/src/server/web/views/info.pug +++ b/src/server/web/views/info.pug @@ -66,7 +66,7 @@ html main header h1 Misskey Version #{version} - img(src='/assets/misskey-php-like-logo.png' alt='') + img(src='/static-assets/misskey-php-like-logo.png' alt='') table tr th Instance -- cgit v1.2.3-freya