Code: Select all
next dev
Code: Select all
next build
Code: Select all
next start
Setup:
< ul>
[*]Next.js 14
[*]Standalone-Version gestartet mit Knoten .next/standalone/server.js
< li>Umgebungsvariablen werden sowohl zur Erstellungszeit als auch zur Laufzeit übergeben. z.B.:
Code: Select all
NEXT_PUBLIC_API_URL=http://localhost:3000 HOSTNAME="0.0.0.0" node server.js
Probleme:
-
Weiße Hauptseite:
- Die Hauptseite (oder /en) zeigt einen völlig weißen Bildschirm und der HTML-Code wird nicht korrekt bereitgestellt (nur -Tags werden im Inspektor angezeigt).
Code: Select all
/de
< li>In der Browserkonsole werden folgende Fehler angezeigt: - (auch wenn die Variable sowohl zur Laufzeit als auch zur Build-Zeit festgelegt wird).
Code: Select all
Specify NEXT_PUBLIC_API_URL in your .env file
- JavaScript-Dateien () werden korrekt bereitgestellt, aber die Seite wird nicht gerendert.
Code: Select all
.next/static
< /li> - Die Hauptseite (
- Routing-Probleme:
- Wenn ich /de/someinvalidroute besuche, erhalte ich eine Weiterleitung Schleifenfehler:
„Die Seite wird nicht ordnungsgemäß weitergeleitet.“ - Zum Beispiel: Die Route /de/someinvalidroute leitet zu /de/de weiter, dann zu /de/de/de und so weiter.
- Wenn ich /de/someinvalidroute besuche, erhalte ich eine Weiterleitung Schleifenfehler:
- Eigenständiges Setup:
- Ich erstelle das Projekt lokal mit dem nächsten Build und kopieren Sie dann den Inhalt des Ordners .next/standalone auf den Server. Ich starte den Server mit node server.js.
- Alle notwendigen Dateien (, public usw.) werden korrekt kopiert und Umgebungsvariablen werden gesetzt.
Code: Select all
.next/static
Ich habe versucht: - Build-Cache geleert und neu erstellt:
Code: Select all
rm -rf .next next build
- Umgebungsvariablen zur Erstellungszeit festlegen:
Code: Select all
NEXT_PUBLIC_API_URL=http://localhost:3000 next build
- Angepasste Middleware:
- Ich habe das next-intl konfiguriert< /code> Middleware zum Ausschließen statischer Dateien:
Code: Select all
export const config = { matcher: ['/((?!_next/static|_next/image|favicon.ico|images|api).*)'], };
- Ich habe das next-intl konfiguriert< /code> Middleware zum Ausschließen statischer Dateien:
- Lokales Debuggen:
< ul>
Ich habe eine einfache Testseite erstellt (), das nicht funktioniert:Code: Select all
pages/test.js
Code: Select all
export default function Test() { return Test page is working!; }
- Ich kann keine andere Seite als die Hauptseite unter /de oder /en erreichen, sonst werde ich weitergeleitet .
- Browser-Cache geleert:
- Im Inkognito-Modus getestet und den Browser-Cache geleert, aber die White-Page- und Konsolenfehler bleiben bestehen.
- Standard-Build-Ausgabe verwenden, nicht eigenständig:
- Ich habe bereits versucht, das Projekt ohne die eigenständige Ausgabeoption zu erstellen. Funktioniert auch nicht.
- Warum werden NEXT_PUBLIC_*-Variablen im Browser nicht erkannt, obwohl sie sowohl beim Build als auch zur Laufzeit festgelegt werden?
- Wie Kann ich die Umleitungsschleife reparieren ()-Problem?
Code: Select all
/de/de/de
- Warum bleibt die Hauptseite leer, obwohl der HTML-Code korrekt bereitgestellt wird?
- Gibt es bekannte Probleme mit Next.js 14, next-intl oder der Standalone-Modus, der hier relevant sein könnte?