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!
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.
Essayez de placer vos fichiers dans le dossier public et utilisez le chemin tel que ""