Schritte zum Verpacken und Bereitstellen des Vue-Projekts auf dem Apache-Server

Schritte zum Verpacken und Bereitstellen des Vue-Projekts auf dem Apache-Server

In der Entwicklungsumgebung wird das Vue-Projekt über den Befehl „npm run dev“ ausgeführt, der auf dem lokalen Aufbau eines Express-Servers basiert.

Auf dem Server ist dies jedoch nicht der Fall. Das gesamte Projekt muss mit dem Befehl npm run build gepackt werden. Nach dem Packen wird im Projektverzeichnis ein dist-Ordner mit folgendem Inhalt generiert:

Dann legen Sie diese Dateien einfach in einem Ordner auf dem Server ab. Mein Ordnername ist ibms

Aufgetretene Probleme:

1. Gehen Sie direkt zu http://www.xxx.com/ibms/. Sie werden feststellen, dass die Webseite nur einen weißen Bildschirm ohne Inhalt hat. Das ist ziemlich seltsam. Tatsächlich liegt es daran, dass es ein Problem mit dem Ressourcen-Ladepfad gibt!

Lösung:

Ändern Sie die Webpack-Konfiguration im Build in index.js in der Konfiguration:

assetPublicPath: "/ibms/"

Fügen Sie der index.js-Konfiguration im Router Folgendes hinzu:

exportiere standardmäßig einen neuen Router({
 Modus: "Verlauf",
 scrollBehavior: () => ({ y: 0 }),
 base: '/ibms/', // füge diese Zeile hinzu: constantRouterMap
})

Anschließend verpacken Sie es mit npm run build neu und legen es dann im IBMs-Ordner auf dem Server ab. Anschließend kann normal auf die Seite zugegriffen werden.

2. Aktualisieren Sie die aktuelle Seite oder greifen Sie über die URL-Leiste auf eine Unterseite zu. Sie werden feststellen, dass die Webseite den Fehler 404 aufweist. Dies liegt daran, dass der Modus des Vue-Routings der Verlaufsmodus ist.

Lösung:

Leiten Sie alle Anfragen einfach an http://www.xxx.com/ibms/index.html weiter.

Als Webserver verwende ich hier Apache. Erstelle eine neue .htaccess-Datei im ibms-Verzeichnis (auf gleicher Ebene wie index.html) und bearbeite den Code.

<IfModule mod_rewrite.c>
  RewriteEngine aktiviert
  RewriteBase /ibms/
  RewriteRule ^index\.html$ - [L]
  RewriteCond %{REQUEST_FILENAME} !-f
  UmschreibenCond %{REQUEST_FILENAME} !-d
  RewriteRule . /ibms/index.html [L]
</IfModule>

Der Zweck dieser Konfiguration besteht darin, alle Anfragen, die auf dem Server nicht vorhanden sind, an index.html weiterzuleiten. (PS: Denken Sie daran, den Apache-Server neu zu starten)

Dies ist das Ende dieses Artikels über die Schritte zum Verpacken und Bereitstellen des Vue-Projekts auf dem Apache-Server. Weitere relevante Informationen zum Verpacken und Bereitstellen von Vue-Projekten auf Apache finden Sie in früheren Artikeln auf 123WORDPRESS.COM oder in den folgenden verwandten Artikeln. Ich hoffe, dass jeder 123WORDPRESS.COM in Zukunft unterstützen wird!

Das könnte Sie auch interessieren:
  • So stellen Sie ein Vue-CLI3-Projekt nach dem Verpacken automatisch auf dem Server bereit
  • Lösung für das Problem, dass die Backend-Schnittstelle nicht angefordert werden kann, nachdem das Vue3-Projekt gepackt und auf dem Server bereitgestellt wurde
  • Konfigurationsmethode zum Verpacken und Bereitstellen eines Vue-Projekts auf einem IIS-Server
  • Beispiel zum Verpacken und Bereitstellen eines Vue-Projekts auf einem Server
  • So stellen Sie Vue-Paketdateien auf dem Express-Server bereit
  • Detailliertes Beispiel zum Verpacken und Bereitstellen des Vue-Projekt-Webpacks auf dem Server

<<:  MySQL-Löschfunktion für Mehrfachtabellenverbindungen

>>:  Zeigen Sie die vom Prozess in Linux belegte Portnummer an

Artikel empfehlen

Fallstudie zur dynamischen Datenbindung von this.$set in Vue

Ich finde, dass die Erklärung von this.$set im In...

Der Unterschied zwischen HTML-Frame, Iframe und Frameset

10.4.1 Der Unterschied zwischen Frameset und Fram...

Lösung für das Timeout-Problem bei der Installation von Docker-Compose mit PIP

1: Installationsbefehl pip install docker-compose...

So installieren Sie Redis5.0.3 im Docker

1. Ziehen Sie das offizielle 5.0.3-Image [root@lo...

So erreichen Sie ein zentriertes Layout im CSS-Layout

1. Legen Sie den übergeordneten Container auf ein...

So erstellen Sie ein responsives Säulendiagramm mit dem CSS-Rasterlayout

Ich spiele jetzt schon eine Weile mit Diagrammen ...

5 Tipps zum Schreiben von CSS, um Ihren Stil standardisierter zu gestalten

1. CSS alphabetisch ordnen Nicht in alphabetischer...

Detaillierte Erläuterung des MySQL-Clusterindex und des Nicht-Clusterindex

1. Clustered-Index Tabellendaten werden in der Re...

TD-Breitenproblem beim Zusammenführen von TD-Zellen

Im folgenden Beispiel ist die Anzeige normal, wenn...

Vue3 realisiert den Bildlupeneffekt

In diesem Artikelbeispiel wird der spezifische Co...

Zusammenfassung der gebräuchlichen Buchstaben in Unicode

Die meisten der ersten Computer konnten nur ASCII...

Detaillierte Einführung in Robots.txt

Robots.txt ist eine reine Textdatei, in der Websi...