Der MEAN-Stack (MongoDB, Express.js, Angular und Node.js) ist eine beliebte Kombination von JavaScript-Technologien für die Entwicklung moderner, dynamischer Webanwendungen. Nginx ist ein leistungsstarker und vielseitiger Webserver, der sich gut eignet, um MEAN-Anwendungen effizient und sicher auszuliefern.

Schritt-für-Schritt-Anleitung

1. Installation von MongoDB

MongoDB ist die NoSQL-Datenbank, in der die Daten Ihrer Anwendung gespeichert werden. Folgen Sie den offiziellen Anweisungen von MongoDB, um die neueste Version für Ihre Linux-Distribution zu installieren: https://www.mongodb.com/docs/manual/installation/

2. Installation von Node.js und NPM

Node.js ist die Laufzeitumgebung (Runtime) für Ihren serverseitigen JavaScript-Code (Backend). NPM ist der Paketmanager, mit dem Express.js und andere Abhängigkeiten installiert werden.

  • Ubuntu/Debian:
   sudo apt update
   sudo apt install nodejs npm

Anweisungen für andere Distributionen finden Sie auf der offiziellen Node.js-Website: https://nodejs.org/

3. Konfiguration Ihrer MEAN-Anwendung

Stellen Sie sicher, dass Ihre Anwendung fertig vorbereitet ist:

  • Projekt anlegen: Verwenden Sie das Angular CLI-Tool, um die Grundstruktur Ihres Projekts zu erstellen (falls Sie das nicht schon getan haben).
  • Angular Anwendung für den Produktiveinsatz bauen: Führen Sie im Verzeichnis Ihres Angular-Projekts ng build aus. Dies erstellt eine optimierte Version der Anwendung im Ordner dist.

4. Installation und Konfiguration von Nginx

  • Installation:
   sudo apt update 
   sudo apt install nginx
  • Konfiguration: Erstellen Sie eine neue Nginx-Serverkonfigurationsdatei unter /etc/nginx/sites-available/meinedomain.de (ersetzen Sie meinedomain.de mit Ihrem Domainnamen):
   server {
       listen 80;
       server_name meinedomain.de; 

       root /var/www/meinedomain.de/dist; # Pfad zum 'dist'-Ordner von Angular
       index index.html index.htm;

       location /api {
           proxy_pass http://localhost:3000; # Port Ihres Node.js-Backends
           proxy_http_version 1.1;  
           proxy_set_header Upgrade $http_upgrade; 
           proxy_set_header Connection 'upgrade';
           proxy_set_header Host $host;
           proxy_cache_bypass $http_upgrade;
       }
   }
  • Website aktivieren:
   sudo ln -s /etc/nginx/sites-available/meinedomain.de /etc/nginx/sites-enabled/
  • Nginx testen und neu starten:
   sudo nginx -t  # Konfiguration überprüfen
   sudo systemctl restart nginx 

5. Node.js Anwendung ausführen

Verwenden Sie einen Prozessmanager wie PM2, um Ihr Node.js-Backend im Hintergrund laufen zu lassen:

npm install -g pm2
cd /pfad/zu/meinem/backend 
pm2 start server.js # Angenommen, 'server.js' ist Ihre Start-Datei

Ihre Anwendung ist bereit!

Sie können nun in Ihrem Webbrowser auf Ihre MEAN-Anwendung zugreifen, indem Sie Ihre Domain ([invalid URL removed]) aufrufen. Nginx wird Ihre Angular-Anwendung ausliefern und API-Anfragen an das Node.js-Backend weiterleiten.

Shape.host Dienste

Die Linux SSD VPS von Shape.host bieten eine leistungsstarke, skalierbare und sichere Hosting-Umgebung für Ihre MEAN-Stack-Anwendungen. Mit SSD-Speicher, umfangreichen Sicherheitsfunktionen und skalierbaren Ressourcen ist Shape.host die ideale Wahl für MEAN-Stack Projekte mit Nginx.