mirror of
https://github.com/Einundzwanzig-Podcast/einundzwanzig.space.git
synced 2025-12-13 16:26:50 +00:00
Add redirects
This commit is contained in:
25
tasks/generate_redirects.js
Normal file
25
tasks/generate_redirects.js
Normal file
@@ -0,0 +1,25 @@
|
||||
const { mkdirSync, statSync, writeFileSync } = require('fs')
|
||||
const { dirname, join, resolve } = require('path')
|
||||
|
||||
const redirects = [
|
||||
['/podcast/verschiedenes-special-zur-adoping-bitcoin-konferenz-in-el-salvador/', '/podcast/verschiedenes-special-zur-adopting-bitcoin-konferenz-in-el-salvador/']
|
||||
]
|
||||
|
||||
const dist = resolve(__dirname, '..', 'dist')
|
||||
|
||||
const exists = filePath => {
|
||||
try {
|
||||
const stat = statSync(filePath)
|
||||
return stat.isFile() || stat.isDirectory()
|
||||
} catch (err) {
|
||||
return false
|
||||
}
|
||||
}
|
||||
|
||||
redirects.forEach(([path, redirect]) => {
|
||||
const target = join(dist, path, 'index.html')
|
||||
if (exists(target)) return
|
||||
|
||||
mkdirSync(dirname(target), { recursive: true })
|
||||
writeFileSync(target, `<!DOCTYPE html><html><title>Redirect</title><link rel="canonical" href="${redirect}"><script>location="${redirect}"</script><meta http-equiv="refresh" content="0;url=${redirect}"><meta name="robots" content="noindex"><a href="${redirect}">Click here if you are not redirected.</a></html>`)
|
||||
})
|
||||
Reference in New Issue
Block a user