Heim > Web-Frontend > js-Tutorial > So stellen Sie eine Node.js Express-App auf Netlify bereit (4)

So stellen Sie eine Node.js Express-App auf Netlify bereit (4)

DDD
Freigeben: 2024-11-10 10:57:02
Original
1039 Leute haben es durchsucht

Netlify macht es nicht einfach, eine Express-Web-App zu hosten. Ich hoffe, dass Sie diesen Leitfaden nützlich finden.

Schritte

  • Strukturieren Sie Ihre App auf ähnliche Weise wie unten:

How to deploy a Node.js Express app on Netlify (4)

  • Folgen Sie dieser Anleitung https://docs.netlify.com/frameworks/express/ . Ich habe „node_bundler = „esbuild““ gelöscht, weil es einen ESM-Fehler ausgegeben hat und trotzdem alles einwandfrei funktioniert hat.
  • Behalten Sie beim Erstellen der Datei „netlify.toml“ die Weiterleitungen spezifisch für die API und alle Endpunkte bei, die Sie über Express bedienen möchten. Eine allgemeine Weiterleitung (z. B. „/*“) wird Ihr CDN und die statische Dateibereitstellung durcheinander bringen.

How to deploy a Node.js Express app on Netlify (4)

  • (Optional) Verwenden Sie eine lokale Serverdatei für die Entwicklung, um Dinge wie das Bild übersichtlicher zu halten:

How to deploy a Node.js Express app on Netlify (4)

  • Die package.json kann so aussehen:

     "scripts": {
        "start": "node ./functions/server.js",
        "build": "netlify deploy --prod",
        "build-dev": "NODE_ENV=development webpack --mode development --watch",
        "dev": "NODE_ENV=development node server-local.js",
        "dev-watch": "NODE_ENV=development nodemon --exec node server-local.js",
    },
    
    Nach dem Login kopieren
  • Schreiben Sie Ihren server.mjs-Code wie im Bild:

How to deploy a Node.js Express app on Netlify (4)

  • In der index.html und den restlichen .html-Dateien wird der Pfad zu CSS, JS und anderen Assets am besten auf das CDN festgelegt, das sowohl in der Entwicklung als auch in der Produktion funktioniert, d. h.:


  • Lauf Netlify-Entwickler auf der Konsole zum Testen vor der Bereitstellung

Wichtige Lektionen

  • Die server.js- oder server.mjs-App hat nur Zugriff auf /netlify/functions. Der Ordner „public“, „dist“ oder „static“ wird nicht zum Netlify-Ordner hinzugefügt, es sei denn, er wird explizit in der Datei „netlify.toml“ mit dem Befehl angegeben
[functions]
  included_files = [
    "static/views/**"  # Include all files in static/views for server-side access
  ] 
Nach dem Login kopieren
  • Statische Assets werden besser durch das CDN von Netlify bedient, was automatisch geschieht, wenn Sie in der Datei netlify.toml den Befehl verwenden
[build]
  publish = "static"  # Static assets to be served by Netlify's CDN. Folder defaults to public
Nach dem Login kopieren
  • Console.log-Anweisungen außerhalb von Router-Endpunkten werden nicht auf der Konsole angezeigt.

Das obige ist der detaillierte Inhalt vonSo stellen Sie eine Node.js Express-App auf Netlify bereit (4). Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:dev.to
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage