diff --git a/package-lock.json b/package-lock.json index c09d0b2f..febbadf7 100644 --- a/package-lock.json +++ b/package-lock.json @@ -7650,12 +7650,6 @@ "integrity": "sha512-6qE4B9deFBIa9YSpOc9O0Sgc43zTeVYbgDT5veRKSlB2+ZuHNoVVxA1L/ckMUayV9Ay9y7Z/SZCLcGteW9i7bg==", "dev": true }, - "md5-file": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/md5-file/-/md5-file-4.0.0.tgz", - "integrity": "sha512-UC0qFwyAjn4YdPpKaDNw6gNxRf7Mcx7jC1UGCY4boCzgvU2Aoc1mOGzTtrjjLKhM5ivsnhoKpQVxKPp+1j1qwg==", - "dev": true - }, "md5.js": { "version": "1.3.5", "resolved": "https://registry.npmjs.org/md5.js/-/md5.js-1.3.5.tgz", diff --git a/package.json b/package.json index 8f7701b6..3b5d9f17 100644 --- a/package.json +++ b/package.json @@ -104,7 +104,6 @@ "file-loader": "^2.0.0", "har-validator": "^5.1.3", "husky": "^1.1.3", - "md5-file": "^4.0.0", "mini-css-extract-plugin": "^0.5.0", "mocha": "^5.2.0", "ndb": "^1.0.26", diff --git a/server/render/handleShowRender.jsx b/server/render/handleShowRender.jsx index 4f43a400..ca0082f1 100644 --- a/server/render/handleShowRender.jsx +++ b/server/render/handleShowRender.jsx @@ -49,9 +49,12 @@ export default (req, res) => { action = false, saga = false, } = httpContext.get('routeData'); + + if (action === 'fallback') { + res.status(404); + } const runSaga = (action !== false && saga !== false); - const renderPage = (store) => { // Workaround, remove when a solution for async httpContext exists @@ -63,10 +66,10 @@ export default (req, res) => { } else { const channelKeys = Object.keys(showState.channelList); - if(channelKeys.length !== 0) { + if (channelKeys.length !== 0) { res.claimId = showState.channelList[channelKeys[0]].longId; res.isChannel = true; - } + } } // render component to a string @@ -115,10 +118,16 @@ export default (req, res) => { .then(() => { // redirect if request does not use canonical url const canonicalUrl = getCanonicalUrlFromShow(store.getState().show); + + if (!canonicalUrl) { + res.status(404); + } + if (canonicalUrl && canonicalUrl !== req.originalUrl) { console.log(`redirecting ${req.originalUrl} to ${canonicalUrl}`); res.redirect(canonicalUrl); } + return renderPage(store) }); } else { diff --git a/server/render/renderFullPage.js b/server/render/renderFullPage.js index a35a0c1e..12e39214 100644 --- a/server/render/renderFullPage.js +++ b/server/render/renderFullPage.js @@ -1,10 +1,3 @@ -const md5File = require('md5-file'); -const path = require('path'); - -const bundlePath = path.resolve('./public/bundle/bundle.js'); -const bundleHash = md5File.sync(bundlePath); -const shortBundleHash = bundleHash.substring(0,4); - module.exports = (helmet, html, preloadedState) => { // take the html and preloadedState and return the full page return ` @@ -29,7 +22,7 @@ module.exports = (helmet, html, preloadedState) => { - + `;