web-dev-qa-db-fra.com

Échec du chargement de la ressource: le serveur a répondu avec un statut 404 (introuvable) https://websitename.herokuapp.com/js/bootstrap.js

J'exécute un serveur node.js sur heroku à l'aide du framework express.js.

Voici à quoi ressemble mon serveur:

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

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

app.listen(port);

Mon fichier index.html contient les liens javascript suivants:

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

Mon système de répertoire ressemble à ceci:

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

Chrome affiche ma page html avec les styles css appropriés, mais la console indique:

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

Il se charge correctement lorsque je change mes balises index.html pour ressembler à ceci:

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

Et je change mes systèmes de répertoires pour ressembler à ceci:

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

Ce n'est pas idéal, car j'aimerais avoir un dossier/js.

Toutes les suggestions seront grandement appréciées!

4
atasca10

De l'erreur de console, https://websitename.herokuapp.com/js/chartview.js, le fichier n'est pas vérifié dans le dossier statique. 

Alors, changez votre index.html pour inclure des scripts comme celui-ci.

<script src="js/chartview.js"></script> i.e supprimer / du début. as path est relatif à index.html.

Suivez le même processus pour les trois autres fichiers.

En outre, vous avez mentionné que les fichiers CSS sont chargés correctement. Pouvez-vous montrer comment exactement vous incluez ces fichiers css? c'est-à-dire le chemin pour les CSS.

Commentez ici, si cela ne vous aide pas.

12
Aniket Sinha

Essayez de placer vos fichiers dans le dossier public et utilisez le chemin tel que ""

1
MacInnis