Server-side rendering (SSR)

  • statt einer statischen Seite wird ein Skript/Code aufgerufen
  • Code wird ausgeführt und erzeugt eine Seite
    • Seite kann aus HTML Schnipseln zusammengesetzt werden (z. B. für Header, Navigation, Footer)
    • Code kann Daten aus Datenbank laden und in Seite einbauen
  • Server muss das Ausführen des Skriptes/Codes unterstützen (Applikation Server)
  • neben HTML Seiten können vom Server auch andere Daten/Dateien erzeugt werden
  • wie bei statischer Seite können Inhalte verlinkt werden, die dann nachgeladen werden

Beispiel mit php (z. B. Datei index.php statt index.html):

Code<html>
 <body>
 <?php echo '<p>Hello World</p>'; ?>
 </body>
</html>

Für Testumgebung/Entwicklungsumgebung mit Apache, PHP/Perl, MariaDB: XAMPP

Beispiel mit Node.js:

JavaScriptconst http = require('http');

const hostname = '127.0.0.1'; // localhost
const port = 3000;

const server = http.createServer((request, response) => {
  response.statusCode = 200;
  /*response.setHeader('Access-Control-Allow-Origin', '*'); // bei CORS Fehler */
  response.setHeader('Content-Type', 'text/html');
  const message = 'Hello World';
  response.end('<html><body><p>' + message + '</p></body></html>');
});

server.listen(port, hostname, () => {
  console.log(`Server running at http://${hostname}:${port}/`);
});

Server-side Web Frameworks

FrameworkSpracheBesonderheiten
DjangoPythonModel View Presenter; bietet viel Funktionalität (z. B. Sicherheitsfeatures) und gute Erweiterbarkeit
LaravelPHPbeliebtes PHP Framework
Ruby on RailsRubyModel View Controller; geeignet zur schnellen Prototyp Erstellung; viele Erweiterungen
ASP.NET.Net Sprache (z. B. C#, Visual Basic)von Microsoft; mit allen .Net Sprachen verwendbar (z. B. C#, Visual Basic)
Spring BootJavabeliebtes Java Framework
ExpressJSNode.js/JavaScriptNode.js Modul für Request Handling; beliebtes Node.js Web Framework (auch Teil anderer Frameworks)