2021-07-25 14:38:14 +02:00
|
|
|
import { install } from 'source-map-support'
|
2021-07-25 14:00:22 +02:00
|
|
|
|
2021-07-25 14:38:14 +02:00
|
|
|
import 'zone.js/dist/zone-node'
|
2021-07-25 14:00:22 +02:00
|
|
|
import './ssr-polyfills'
|
2021-07-24 20:25:09 +02:00
|
|
|
|
2021-07-25 14:38:14 +02:00
|
|
|
import { enableProdMode } from '@angular/core'
|
|
|
|
|
import { ngExpressEngine } from '@nguniversal/express-engine'
|
2021-07-24 20:25:09 +02:00
|
|
|
|
|
|
|
|
import * as express from 'express'
|
|
|
|
|
import { join } from 'path'
|
|
|
|
|
|
2021-07-25 14:38:14 +02:00
|
|
|
install()
|
|
|
|
|
enableProdMode()
|
2021-07-24 20:25:09 +02:00
|
|
|
|
2021-07-25 14:38:14 +02:00
|
|
|
const app = express()
|
2021-07-24 20:25:09 +02:00
|
|
|
|
2021-07-25 14:38:14 +02:00
|
|
|
const PORT = process.env.PORT || 4000
|
|
|
|
|
const DIST_FOLDER = join(process.cwd(), 'build')
|
2021-07-24 20:25:09 +02:00
|
|
|
|
|
|
|
|
import { AppServerModule } from './app.server.module'
|
|
|
|
|
|
|
|
|
|
app.engine('html', ngExpressEngine({
|
2021-07-25 14:38:14 +02:00
|
|
|
bootstrap: AppServerModule,
|
|
|
|
|
}))
|
2021-07-24 20:25:09 +02:00
|
|
|
|
2021-07-25 14:38:14 +02:00
|
|
|
app.set('view engine', 'html')
|
|
|
|
|
app.set('views', DIST_FOLDER)
|
2021-07-24 20:25:09 +02:00
|
|
|
|
2021-07-25 14:38:14 +02:00
|
|
|
app.get('*.*', express.static(DIST_FOLDER, {
|
|
|
|
|
maxAge: '1y',
|
|
|
|
|
}))
|
2021-07-24 20:25:09 +02:00
|
|
|
|
2021-07-25 14:00:22 +02:00
|
|
|
app.get('*', (req, res) => {
|
2021-07-25 14:38:14 +02:00
|
|
|
res.render('index', { req })
|
|
|
|
|
})
|
2021-07-24 20:25:09 +02:00
|
|
|
|
|
|
|
|
app.listen(PORT, () => {
|
2021-07-25 14:38:14 +02:00
|
|
|
console.log(`Node Express server listening on http://localhost:${PORT}`)
|
|
|
|
|
})
|