2017-01-03 4 views
1

Ich versuche, eine vue.js Single-Page-App mit einem node.js-Server zu dienen, aber ich habe ein Problem mit einigen Express-Middleware.express nicht senden statisches Verzeichnis

Im Grunde versuche ich jetzt zwei Dinge zu dienen. Meine index.html und ein dist-Ordner, der alle meine statischen Dateien enthält. Auf localhost meine index.html wird richtig bedient, aber ich bekomme einen GET-Fehler für meine Dist-Ordner und kann es nicht in der Registerkarte Quellen finden.

Ich habe mehr oder weniger dieselbe Codezeile für viele einzelne Seiten-Apps verwendet, um meine statischen Assets zu bedienen, aber aus irgendeinem Grund dient diese Einstellung nicht dazu, den Ordner dist zu liefern.

app.use(express.static(path.join(__dirname, '/dist'))); 

Jeder mit ausdrücklicher Erfahrung wissen, warum diese Linie nicht funktioniert?

+0

können Sie den Pfad für den HTTP-Fehler anzeigen, den Sie erhalten? –

Antwort

0

Sie verwenden express.static nicht korrekt. Standardmäßig wird express.static den Inhalt, den Sie INSIDE von diesem Ordner dist haben, dienen.

Was wollen Sie tun, ist dies:

app.use('/dist', express.static(path.join(__dirname, '/dist'))); 

Dies wird ausdrücklich zwingen, diese statischen Vermögenswerte unter der '/dist' Route zu dienen.

Verwandte Themen