Commit 5c2eb5a8 authored by Evan You's avatar Evan You

tweak static assets serving

parent d277c39a
...@@ -22,7 +22,6 @@ ...@@ -22,7 +22,6 @@
"html-webpack-plugin": "^2.24.1", "html-webpack-plugin": "^2.24.1",
"lru-cache": "^4.0.1", "lru-cache": "^4.0.1",
"serialize-javascript": "^1.3.0", "serialize-javascript": "^1.3.0",
"serve-favicon": "^2.3.0",
"vue": "^2.0.0", "vue": "^2.0.0",
"vue-router": "^2.0.0", "vue-router": "^2.0.0",
"vue-server-renderer": "^2.0.0", "vue-server-renderer": "^2.0.0",
......
...@@ -4,6 +4,7 @@ const isProd = process.env.NODE_ENV === 'production' ...@@ -4,6 +4,7 @@ const isProd = process.env.NODE_ENV === 'production'
const fs = require('fs') const fs = require('fs')
const path = require('path') const path = require('path')
const express = require('express') const express = require('express')
const favicon = require('serve-favicon')
const compression = require('compression') const compression = require('compression')
const serialize = require('serialize-javascript') const serialize = require('serialize-javascript')
const resolve = file => path.resolve(__dirname, file) const resolve = file => path.resolve(__dirname, file)
...@@ -48,12 +49,16 @@ function parseIndex (template) { ...@@ -48,12 +49,16 @@ function parseIndex (template) {
} }
} }
const serve = (path, cache) => express.static(resolve(path), {
maxAge: cache && isProd ? 60 * 60 * 24 * 30 : 0
})
app.use(compression({ threshold: 0 })) app.use(compression({ threshold: 0 }))
app.use('/service-worker.js', express.static(resolve('./dist/service-worker.js'))) app.use(favicon('./src/assets/logo.png'))
app.use('/manifest.json', express.static(resolve('./manifest.json'))) app.use('/service-worker.js', serve('./dist/service-worker.js'))
const cacheConfig = { maxAge: isProd ? 60 * 60 * 24 * 30 : 0 } app.use('/manifest.json', serve('./manifest.json'))
app.use('/logo.png', express.static(resolve('./src/assets/logo.png'), cacheConfig)) app.use('/logo.png', serve('./src/assets/logo.png'))
app.use('/dist', express.static(resolve('./dist'), cacheConfig)) app.use('/dist', serve('./dist'))
app.get('*', (req, res) => { app.get('*', (req, res) => {
if (!renderer) { if (!renderer) {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment