JavaScript SEO für Javascript

Danke, dass hab ich noch nicht gefunden und wird getestet.
Speichern in einer Variable.. naja F5 drücken und weg ist der Warenkorb.

Der Moment wenn alles kompiliert ist und auf den Localhost geht:
header works!
home works!
footer works!


Unbezahlbar :D
Allerdings bin ich mir überhaupt nicht sicher, ob man den server so produktiv einsetzen kann...

Javascript:
import 'zone.js/dist/zone-node';
import 'reflect-metadata';
import * as express from 'express';
import * as helmet from 'helmet';
import {join} from 'path';
import {AppConfig} from './src/app/configs/app.config';


const app = express();

const PORT = process.env.PORT || 4000;
const DIST_FOLDER = join(process.cwd(), 'dist/browser');
const routes = [
    {path: '/*', view: 'index'}
];

// * NOTE :: leave this as require() since this file is built Dynamically from webpack
const {AppServerModuleNgFactory, LAZY_MODULE_MAP, ngExpressEngine, provideModuleMap} = require('./dist/server/main');

app.use(helmet());
app.use(helmet.referrerPolicy({policy: 'same-origin'}));
app.use(helmet.noCache());

app.use(helmet.contentSecurityPolicy({
    directives: AppConfig.cspDirectives
}));
app.disable('x-powered-by');

// Our Universal express-engine (found @ https://github.com/angular/universal/tree/master/modules/express-engine)
app.engine('html', ngExpressEngine({
  bootstrap: AppServerModuleNgFactory,
  providers: [
    provideModuleMap(LAZY_MODULE_MAP)
  ]
}));

app.set('view engine', 'html');
app.set('views', DIST_FOLDER);


app.get('[I].[/I]', express.static(join(DIST_FOLDER, 'browser')));
routes.forEach((route) => {
    app.get(route.path, (req, res) => {
        res.render(route.view, {
            req, res, engine: ngExpressEngine({
                bootstrap: AppServerModuleNgFactory,
                providers: [
                    provideModuleMap(LAZY_MODULE_MAP)
                ]
            })
        });
    });
});

// Start up the Node server
app.listen(PORT, () => {
  console.log([ICODE]Node Express server listening on http://localhost:${PORT}[/ICODE]);
});

Wäre über die eine oder andere Meinung dazu sehr dankbar :) Muss aber auch noch einige Sachen nachlesen... Versuche mir gerade ein "Basis Projekt" anzulegen was ich dann für weitere Projekte nutzen möchte.
 
Zuletzt bearbeitet:
Bei Angular Universal in Production kann ich dir leider nicht weiterhelfen. Das habe ich bisher auch nur immer mal in Test Umgebungen ausprobiert. Bisher gab’s kein Projekt wo das explizit gefordert war.

Aber irgendwer hier im Forum wird sich da sicherlich auskennen. Ansonsten: google angular universal production ;)
 
Google habe ich ja bemüht aber wie das halt so ist, im Internet kann jeder was schreiben :D
 
Zurück
Oben