15%

15% auf alle Hosting-Dienste sparen

Teste deine Fähigkeiten und erhalte Rabatt auf jeden Hosting-Plan

Benutze den Code:

Skills
Anfangen
15.10.2024

Wie man React.js auf einem Windows VPS installiert: Vollständige Einrichtungsanleitung

React.js ist eine Open-Source-JavaScript-Bibliothek, die von Meta (ehemals Facebook) für die Entwicklung komponentenbasierter Benutzeroberflächen gepflegt wird, insbesondere für Single-Page Applications (SPAs), die das DOM dynamisch ohne vollständige Seitenneuladen aktualisieren. Die Installation von React auf einem Windows VPS – anstatt auf einer lokalen Workstation – bietet Ihnen eine persistente, remote zugängliche Entwicklungsumgebung mit dedizierten Ressourcen, was sie ideal für die Teamzusammenarbeit, CI/CD-Pipelines und Staging-Deployments macht.

Diese Anleitung führt Sie durch jeden Schritt einer produktionsreifen React.js-Installation auf einem Windows VPS: von der Node.js-Laufzeitkonfiguration und dem Umgebungsvariablen-Management bis hin zum Projekt-Scaffolding, dem Betrieb des Entwicklungsservers und der Produktions-Build-Ausgabe. Sie behandelt auch nicht offensichtliche Fehlermodi, über die Entwickler stolpern, die oberflächlichen Tutorials folgen.

Warum React auf einem Windows VPS statt auf Localhost installieren

Das Ausführen Ihrer React-Entwicklungsumgebung auf einer VPS Hosting-Instanz anstatt auf einem lokalen Rechner löst mehrere reale Probleme:

  • Persistente Betriebszeit: Der Entwicklungsserver bleibt auch dann aktiv, wenn Ihr lokaler Rechner ausgeschaltet ist, sodass Remote-Teammitglieder oder QA-Tester jederzeit auf eine Live-Vorschau-URL zugreifen können.
  • Konsistente Umgebung: Jeder Entwickler verbindet sich mit demselben Betriebssystem, derselben Node-Version und demselben Abhängigkeitsbaum, was „funktioniert auf meinem Rechner”-Fehler eliminiert.
  • Ressourcenisolierung: CPU-intensive Builds (npm run build, große Webpack-Kompilierungen) beeinträchtigen Ihre lokale Workstation nicht.
  • Staging-Parität: Ein Windows VPS spiegelt die Ziel-Deployment-Umgebung wider, wenn Ihr Produktions-Stack ebenfalls auf Windows Server basiert (IIS, ASP.NET-Hybridarchitekturen).
  • Remote-Zugänglichkeit: Sie können den Entwicklungsserver auf einem bestimmten Port verfügbar machen und von jedem Browser aus überall darauf zugreifen.

Wenn Ihre Arbeitslast schließlich auf die Bereitstellung kompilierter React-Assets neben einer Node.js-API skaliert, sollten Sie den Wechsel zu einer Dedicated Servers-Umgebung in Betracht ziehen, um garantierten I/O-Durchsatz und keine Noisy-Neighbor-Effekte zu gewährleisten.

Voraussetzungen

Stellen Sie vor dem Start sicher, dass Folgendes auf Ihrem Windows VPS vorhanden ist:

  • Windows Server 2016 / 2019 / 2022 oder Windows 10/11 (64-Bit)
  • Administrator- oder erhöhter Benutzerzugriff über RDP
  • Ausgehender Internetzugang auf dem VPS (zum Herunterladen von Installationsprogrammen und npm-Paketen)
  • Mindestens 2 GB RAM — Webpacks In-Memory-Kompilierung ist speicherhungrig; 4 GB werden für Projekte mit mehr als einer Handvoll Abhängigkeiten empfohlen
  • Ein Texteditor oder eine IDE — Visual Studio Code ist der De-facto-Standard für die React-Entwicklung

Schritt 1: Node.js auf Windows installieren

1.1 Das LTS-Release herunterladen

React erfordert nicht die absolut neueste Node.js-Version. Der LTS (Long Term Support)-Kanal ist die richtige Wahl für jede Umgebung, in der Stabilität wichtig ist.

  1. Öffnen Sie einen Browser auf Ihrem VPS (oder laden Sie es remote herunter und übertragen Sie es über die RDP-Zwischenablage).
  2. Navigieren Sie zu https://nodejs.org.
  3. Laden Sie den Windows Installer (.msi) für die aktuelle LTS-Version herunter (z. B. 20.x oder 22.x).

Wichtiger Hinweis: Laden Sie immer den 64-Bit-.msi-Installer herunter, nicht das .zip-Archiv. Der .msi übernimmt die PATH-Registrierung, die Service-Integration und die Visual C++ Redistributable-Abhängigkeit automatisch. Das .zip-Archiv erfordert eine manuelle PATH-Konfiguration und ist eine häufige Ursache für npm-Fehler, bei denen der Befehl nicht erkannt wird.

1.2 Den Installer ausführen

Führen Sie die heruntergeladene .msi-Datei aus und folgen Sie dem Assistenten:

  1. Akzeptieren Sie die Lizenzvereinbarung.
  2. Lassen Sie den Zielpfad als Standard (C:Program Filesnodejs), es sei denn, Sie haben einen bestimmten Grund, ihn zu ändern.
  3. Stellen Sie auf dem Bildschirm Benutzerdefiniertes Setup sicher, dass alle folgenden Komponenten ausgewählt sind:
  • Node.js-Laufzeit
  • npm-Paketmanager
  • Zu PATH hinzufügen (dies ist das wichtigste Kontrollkästchen — wenn es nicht aktiviert ist, erkennt kein Terminal node oder npm)
  • Online-Dokumentationsverknüpfungen (optional)
  1. Aktivieren Sie auf dem Bildschirm Tools für native Module die Option „Notwendige Tools automatisch installieren”, wenn Sie npm-Pakete verwenden möchten, die eine native Kompilierung erfordern (node-gyp, bcrypt, sharp usw.). Dadurch werden Chocolatey, Python und die Visual Studio Build Tools im Hintergrund installiert.
  2. Schließen Sie die Installation ab und starten Sie die Terminalsitzung neu (oder die gesamte RDP-Sitzung, wenn PATH-Änderungen nicht sofort übernommen werden).

1.3 Die Installation überprüfen

Öffnen Sie ein neues PowerShell– oder Eingabeaufforderungs-Fenster (nicht eines, das vor der Installation geöffnet war — es wird nicht den aktualisierten PATH haben) und führen Sie aus:

node -v
npm -v

Beide Befehle müssen Versionszeichenfolgen zurückgeben. Wenn einer von ihnen 'node' is not recognized as an internal or external command zurückgibt, wurde der PATH nicht korrekt gesetzt. Lesen Sie den Abschnitt zur Fehlerbehebung unten.

Beispiel der erwarteten Ausgabe:

v20.14.0
10.7.0

1.4 Das globale Paketverzeichnis von npm konfigurieren (optional, aber empfohlen)

Standardmäßig installiert npm globale Pakete in C:Users<username>AppDataRoamingnpm. In einer gemeinsam genutzten oder Multi-User-Windows-Server-Umgebung kann dies zu Berechtigungskonflikten führen. So legen Sie ein benutzerdefiniertes globales Verzeichnis fest:

npm config set prefix "C:npm-global"

Fügen Sie dann C:npm-global zu Ihrem System-PATH über Systemeigenschaften > Umgebungsvariablen > Systemvariablen > Pfad hinzu.

Schritt 2: Eine React-Anwendung erstellen

2.1 Der moderne Ansatz: Vite (empfohlen gegenüber Create React App)

Der ursprüngliche Artikel empfiehlt create-react-app (CRA). Dies ist veralteter Rat. CRA wurde Anfang 2023 offiziell eingestellt und wird vom React-Kernteam nicht mehr gepflegt. Die React-Dokumentation selbst empfiehlt es nicht mehr für neue Projekte.

Die aktuell empfohlenen Scaffolding-Tools sind:

ToolBuild-SystemEntwicklungsserver-GeschwindigkeitBundle-AusgabeAm besten geeignet für
**Vite**Rollup (ESM-nativ)Extrem schnell (HMR in Millisekunden)Optimierte ES-ModuleNeue Projekte, SPAs, moderne Browser
**Create React App**Webpack 4Langsam bei großen ProjektenCommonJS-BundleNur Legacy-Projekte
**Next.js**Turbopack / WebpackSchnellSSR + statischFull-Stack-React, SEO-kritische Apps
**Remix**esbuildSchnellServer-gerendertDaten- und formularintensive Anwendungen
**Parcel**Parcel-BundlerSchnell, Zero-ConfigMehrere ZielePrototyping, kleine Projekte

Für eine einfache SPA auf einem Windows VPS ist Vite im Jahr 2024 und darüber hinaus die richtige Wahl.

2.2 Ein neues React-Projekt mit Vite erstellen

Öffnen Sie PowerShell und navigieren Sie zu Ihrem Projektverzeichnis:

cd C:Projects

Erstellen Sie ein neues React-Projekt:

npm create vite@latest my-react-app -- --template react

Um TypeScript zu verwenden (dringend empfohlen für jedes nicht-triviale Projekt):

npm create vite@latest my-react-app -- --template react-ts

Navigieren Sie in das Projektverzeichnis und installieren Sie die Abhängigkeiten:

cd my-react-app
npm install

2.3 Wenn Sie Create React App verwenden müssen (Legacy-Projekte)

Wenn Sie eine Legacy-Codebasis pflegen, die CRA erfordert, verwenden Sie npx, um es ohne eine globale Installation auszuführen:

npx create-react-app my-react-app

Führen Sie nicht npm install -g create-react-app aus. Der globale Installationsansatz ist veraltet und ruft eine veraltete gecachte Version ab. Die Verwendung von npx ruft immer die neueste verfügbare Version aus der Registry ab.

Schritt 3: Den Entwicklungsserver starten

3.1 Den Entwicklungsserver starten

Für ein Vite-basiertes Projekt:

npm run dev

Für ein CRA-basiertes Projekt:

npm start

Beide Befehle starten einen lokalen Entwicklungsserver. Vite verwendet standardmäßig http://localhost:5173; CRA verwendet standardmäßig http://localhost:3000.

3.2 Den Entwicklungsserver auf einem Windows VPS verfügbar machen (Remote-Zugriff)

Auf einem lokalen Rechner ist der Entwicklungsserver nur über localhost zugänglich. Auf einem VPS möchten Sie in der Regel über das Internet von Ihrem lokalen Browser darauf zugreifen. Dafür sind zwei Änderungen erforderlich:

Den Server an alle Netzwerkschnittstellen binden:

Bearbeiten Sie für Vite vite.config.js (oder vite.config.ts):

import { defineConfig } from 'vite'
import react from '@vitejs/plugin-react'

export default defineConfig({
  plugins: [react()],
  server: {
    host: '0.0.0.0',
    port: 5173,
  },
})

Setzen Sie für CRA die Umgebungsvariable HOST vor dem Start:

set HOST=0.0.0.0
npm start

Den Port in der Windows-Firewall öffnen:

netsh advfirewall firewall add rule name="React Dev Server" dir=in action=allow protocol=TCP localport=5173

Danach können Sie den Entwicklungsserver unter http://<your-vps-ip>:5173 von jedem Browser aus aufrufen.

Sicherheitswarnung: Stellen Sie niemals einen Entwicklungsserver ohne Authentifizierung auf einem Produktions-VPS öffentlich im Internet bereit. Verwenden Sie einen Reverse-Proxy (Nginx oder IIS mit URL Rewrite) oder einen VPN-Tunnel für jede Umgebung, die echte Daten verarbeitet.

Schritt 4: Projektstruktur und wichtige Dateien

Das Verständnis der erstellten Struktur verhindert Verwirrung, wenn Sie beginnen, Dateien zu ändern:

my-react-app/
├── public/             # Static assets served as-is (favicon, robots.txt)
├── src/
│   ├── assets/         # Images, fonts imported by components
│   ├── App.jsx         # Root component
│   ├── App.css         # Root component styles
│   ├── main.jsx        # Entry point — mounts <App /> into index.html
│   └── index.css       # Global styles
├── index.html          # HTML shell — Vite injects the bundle here
├── vite.config.js      # Vite configuration
├── package.json        # Dependencies and scripts
└── node_modules/       # Installed packages (never commit this)

Die Datei src/main.jsx ist der Einstiegspunkt der Anwendung. Sie ruft ReactDOM.createRoot() auf, um die Root-Komponente in das #root-Div in index.html einzubinden. Jede Komponente, die Sie erstellen, wird letztendlich in diesen Baum importiert.

Schritt 5: Für die Produktion bauen

Wenn die Anwendung bereit für das Deployment ist, erstellen Sie einen optimierten statischen Build:

npm run build

Dieser Befehl ruft Vites Rollup-basierten Bundler auf (oder Webpack für CRA), der:

  • JSX und modernes JavaScript in browserkompatibles ES5/ES2015+ transpiliert
  • Ungenutzten Code aus dem Bundle entfernt (Tree-Shaking)
  • JavaScript, CSS und HTML minimiert
  • Inhaltsgecachte Dateinamen für langfristiges Browser-Caching generiert
  • Alles in das dist/-Verzeichnis (Vite) oder build/-Verzeichnis (CRA) ausgibt

So können Sie den Produktions-Build lokal vor dem Deployment in der Vorschau anzeigen:

npm run preview

Der Inhalt von dist/ sind rein statische Dateien (HTML, JS, CSS, Assets). Sie können von jedem Webserver bereitgestellt werden — IIS auf Windows Server, Nginx, Apache oder einem statischen Hosting-Dienst.

Den Build auf IIS auf Windows Server deployen

Wenn Ihr VPS IIS ausführt, konfigurieren Sie eine neue Website, die auf den dist/-Ordner verweist. Da React-SPAs clientseitiges Routing verwenden, müssen Sie eine URL-Rewrite-Regel hinzufügen, um alle 404-Fehler zurück zu index.html umzuleiten:

<configuration>
  <system.webServer>
    <rewrite>
      <rules>
        <rule name="React SPA" stopProcessing="true">
          <match url=".*" />
          <conditions logicalGrouping="MatchAll">
            <add input="{REQUEST_FILENAME}" matchType="IsFile" negate="true" />
            <add input="{REQUEST_FILENAME}" matchType="IsDirectory" negate="true" />
          </conditions>
          <action type="Rewrite" url="/index.html" />
        </rule>
      </rules>
    </rewrite>
  </system.webServer>
</configuration>

Ohne diese Regel gibt jede direkte Navigation zu einer Route wie /dashboard einen 404-Fehler von IIS zurück, anstatt die React-App zu laden.

Wenn Sie das React-Frontend neben einer Backend-API bereitstellen und eine verwaltete Control-Panel-Umgebung benötigen, kann ein VPS mit cPanel die Konfiguration virtueller Hosts und die SSL-Terminierung vereinfachen.

Schritt 6: Die Anwendung mit HTTPS absichern

Eine produktive React-App muss über HTTPS bereitgestellt werden. Browser blockieren Mixed-Content-Anfragen, und viele Browser-APIs (Service Worker, Geolokalisierung, Zwischenablage) sind auf sichere Kontexte beschränkt.

Für ein VPS-gehostetes Deployment:

  1. Erwerben Sie ein SSL-Zertifikat für Ihre Domain. AlexHost bietet SSL-Zertifikate an, die direkt auf Ihrem VPS installiert werden können.
  2. Konfigurieren Sie IIS oder Ihren Reverse-Proxy, um TLS auf Port 443 zu terminieren und HTTP (Port 80) auf HTTPS umzuleiten.
  3. Setzen Sie die Umgebungsvariable HTTPS auf true, wenn Sie den integrierten Server von CRA für lokale HTTPS-Tests verwenden.

Wenn Sie noch keine Domain haben, die auf Ihren VPS zeigt, registrieren Sie zuerst eine über Domain-Registrierung und konfigurieren Sie den DNS-A-Eintrag so, dass er auf die IP-Adresse Ihres VPS zeigt.

Schritt 7: Häufige Probleme beheben

node oder npm nicht erkannt

Das bedeutet, dass das Node.js-Installationsverzeichnis nicht im System-PATH enthalten ist. Beheben Sie es manuell:

  1. Drücken Sie Win + R, geben Sie sysdm.cpl ein und drücken Sie Enter.
  2. Gehen Sie zu Erweitert > Umgebungsvariablen.
  3. Suchen Sie unter Systemvariablen nach Path und klicken Sie auf Bearbeiten.
  4. Fügen Sie C:Program Filesnodejs als neuen Eintrag hinzu.
  5. Klicken Sie in allen Dialogen auf OK und öffnen Sie dann ein neues Terminalfenster.

EACCES oder Zugriff-verweigert-Fehler während der npm-Installation

Auf Windows Server tritt dies typischerweise auf, wenn npm als eingeschränkter Benutzer ausgeführt wird. Führen Sie entweder PowerShell als Administrator aus oder konfigurieren Sie den Cache und die globalen Verzeichnisse von npm auf einen Pfad, den der aktuelle Benutzer besitzt:

npm config set cache "C:npm-cache"
npm config set prefix "C:npm-global"

Port bereits in Verwendung

Wenn Port 5173 oder 3000 von einem anderen Prozess belegt ist:

netstat -ano | findstr :5173

Identifizieren Sie die PID in der letzten Spalte, dann:

taskkill /PID <PID> /F

Alternativ können Sie den Port in vite.config.js ändern oder --port als Flag übergeben:

npm run dev -- --port 3001

npm ERR! code EINTEGRITY (Prüfsummen-Fehler)

Dies weist auf einen beschädigten npm-Cache hin. Leeren Sie ihn und versuchen Sie es erneut:

npm cache clean --force
npm install

Langsames npm install beim ersten Ausführen

Die anfängliche Abhängigkeitsinstallation für ein React-Projekt kann je nach VPS-Netzwerkdurchsatz und Festplatten-I/O 2–5 Minuten dauern. Wenn es wiederholt zu Timeouts kommt, prüfen Sie, ob der VPS ausgehenden Zugriff auf registry.npmjs.org über Port 443 hat. Einige Datacenter-Firewall-Richtlinien blockieren dies standardmäßig.

Entscheidungsmatrix: Die richtige React-Konfiguration für Ihren VPS wählen

SzenarioEmpfohlenes ScaffoldingBereitstellen mitHinweise
Neue SPA, moderne Browser-ZieleVite + ReactIIS / Nginx-Reverse-ProxySchnellste Build-Zeiten, beste DX
Pflege eines Legacy-CRA-ProjektsCRA (über npx)IIS / statischer DateiserverNur migrieren, wenn notwendig
SEO-kritische öffentliche WebsiteNext.jsNode.js-Prozess (PM2)SSR für Crawler-Indexierung erforderlich
Internes Dashboard, kein SEO-BedarfVite + ReactIIS-statische WebsiteKein SSR-Overhead erforderlich
Full-Stack-React + API auf demselben VPSNext.js oder RemixPM2 + IIS-Reverse-ProxyAPI-Routen werden serverseitig verarbeitet
Hochfrequentiertes Produktions-DeploymentVite-Build + CDNCDN-Edge + VPS-UrsprungStatische Assets auf CDN auslagern

Praktische Checkliste der wichtigsten Erkenntnisse

  • Installieren Sie das LTS-Release von Node.js mit dem .msi-Installer, nicht dem .zip-Archiv, um die automatische PATH-Registrierung sicherzustellen.
  • Verwenden Sie npx create vite@latest für alle neuen React-Projekte — CRA ist veraltet und sollte nicht für die Neuentwicklung verwendet werden.
  • Setzen Sie auf einem VPS host: '0.0.0.0' in vite.config.js und öffnen Sie den entsprechenden Firewall-Port, um remote auf den Entwicklungsserver zuzugreifen.
  • Fügen Sie eine IIS-URL-Rewrite-Regel hinzu, um alle Anfragen, die keine Dateien oder Verzeichnisse sind, zu index.html umzuleiten — ohne diese Regel funktioniert das clientseitige Routing beim direkten URL-Zugriff nicht.
  • Stellen Sie Produktions-Builds immer über HTTPS bereit; erwerben und installieren Sie ein SSL-Zertifikat, bevor Sie live gehen.
  • Führen Sie npm run build aus und überprüfen Sie die dist/-Ausgabe vor dem Deployment — prüfen Sie Bundle-Größen mit npm run build -- --report oder vite-bundle-visualizer.
  • Committen Sie node_modules/ niemals in die Versionskontrolle; fügen Sie es immer zu .gitignore hinzu.
  • Wenn für verschiedene Projekte mehrere Node-Versionen benötigt werden, installieren Sie nvm-windows, um diese zu verwalten, ohne Node.js global neu installieren zu müssen.

FAQ

Muss React.js auf einem Server „installiert” werden, oder reicht die Build-Ausgabe?

React selbst ist eine Build-Zeit-Abhängigkeit. Die Produktionsausgabe von npm run build ist reines HTML, CSS und JavaScript — auf dem Server ist keine Node.js-Laufzeit erforderlich, um es bereitzustellen. Node.js wird nur auf dem Rechner benötigt, auf dem Sie den Build-Prozess ausführen.

Was ist der Unterschied zwischen npm run dev und npm run build?

npm run dev startet einen Entwicklungsserver mit Hot Module Replacement (HMR) und nicht minimierten Source Maps — er ist nicht für die Leistung optimiert und sollte niemals für Produktions-Traffic verwendet werden. npm run build erzeugt ein minimiertes, tree-geshaktes, inhaltsgecachtes statisches Bundle, das für das Deployment vorgesehen ist.

Warum ist Create React App veraltet und was sollte ich stattdessen verwenden?

CRA basiert auf Webpack 4, das im Vergleich zu Vites ESM-nativem Entwicklungsserver deutlich langsamere Build- und HMR-Zeiten hat. Das React-Team hat CRA 2023 offiziell aus seiner Dokumentation entfernt und empfiehlt jetzt Vite für SPAs, Next.js für Full-Stack-Anwendungen und Remix für datenintensive Apps.

Kann ich mehrere React-Projekte gleichzeitig auf demselben Windows VPS ausführen?

Ja. Jedes Projekt führt seinen Entwicklungsserver auf einem anderen Port aus. Konfigurieren Sie vite.config.js jedes Projekts mit einem eindeutigen port-Wert, öffnen Sie jeden Port in der Windows-Firewall und richten Sie optional IIS als Reverse-Proxy ein, um Subdomains oder Pfade an den entsprechenden Port weiterzuleiten.

Wie halte ich den React-Entwicklungsserver am Laufen, nachdem ich meine RDP-Sitzung geschlossen habe?

Verwenden Sie einen Prozessmanager. Installieren Sie PM2 global (npm install -g pm2) und starten Sie den Entwicklungsserver als verwalteten Prozess: pm2 start npm --name "react-dev" -- run dev. PM2 hält den Prozess unabhängig von der Terminalsitzung am Laufen und kann so konfiguriert werden, dass er beim Systemstart neu gestartet wird.

15%

15% auf alle Hosting-Dienste sparen

Teste deine Fähigkeiten und erhalte Rabatt auf jeden Hosting-Plan

Benutze den Code:

Skills
Anfangen