webentwicklung-frage-antwort-db.com.de

Ressource konnte nicht geladen werden: Der Server antwortete mit dem Status 404 (nicht gefunden) https://websitename.herokuapp.com/js/bootstrap.js

Ich betreibe einen node.js-Server unter Verwendung des express.js-Frameworks auf heroku.

So sieht mein Server aus:

var express = require('express');
var app = express();

app.use(express.static(__dirname + '/static'));
var port = process.env.PORT || 8000;

app.listen(port);

Meine index.html-Datei enthält die folgenden Javascript-Links:

<script src="/js/chartview.js"></script>
<script src="/js/bootstrap.js"></script>
<script src="/js/bootstrap-select.js"></script>

Mein Verzeichnissystem sieht so aus:

server.js
/static
    -index.html
    -/js
        -bootstrap.js
        -bootstrap-select.js
        -chartview.js
    -/css
        -bootstrap.css
        -bootstrap-select.css
        -styles.css

Chrome zeigt meine HTML-Seite mit den entsprechenden CSS-Stilen an, die Konsole sagt jedoch:

Failed to load resource: the server responded with a status of 404 (Not Found)   https://websitename.herokuapp.com/js/chartview.js
Failed to load resource: the server responded with a status of 404 (Not Found)   https://websitename.herokuapp.com/js/bootstrap.js
Failed to load resource: the server responded with a status of 404 (Not Found)   https://websitename.herokuapp.com/js/bootstrap-select.js

Es wird ordnungsgemäß geladen, wenn ich meine index.html-Tags so verändere, dass sie folgendermaßen aussehen:

<script src="chartview.js"></script>
<script src="bootstrap.js"></script>
<script src="bootstrap-select.js"></script>

Und ich ändere meine Verzeichnissysteme so, dass sie so aussehen:

server.js
/static
    -index.html
    -bootstrap.js
    -bootstrap-select.js
    -chartview.js
    -/css
        -bootstrap.css
        -bootstrap-select.css
        -styles.css

Dies ist nicht ideal, da ich einen/js-Ordner hätte.

Anregungen werden sehr geschätzt!

4
atasca10

Beim Konsolenfehler https://websitename.herokuapp.com/js/chartview.js wird die Datei nicht im statischen Ordner geprüft. 

Ändern Sie also Ihre index.html so, dass sie Skripts enthält.

<script src="js/chartview.js"></script> das heißt / von Anfang an entfernen. as path ist relativ zu index.html.

Folgen Sie dem gleichen Vorgang für die anderen drei Dateien.

Sie haben auch erwähnt, dass die CSS-Dateien korrekt geladen werden. Können Sie zeigen, wie genau diese CSS-Dateien enthalten sind? der Pfad für css.

Kommentar hier, wenn das nicht hilft.

12
Aniket Sinha

Platzieren Sie Ihre Dateien im öffentlichen Ordner und verwenden Sie den Pfad "".

1
MacInnis