Таким образом, даже если вы используете express
для обслуживания stati c файлов, вы не используете express
в качестве сервера, вместо этого вы создаете ручной сервер, который обслуживает index.html
для КАЖДОГО запроса.
http
.createServer(function(req, res) {
fs.readFile("index.html"....);
})
.listen(8080);
Что означает этот код: создать сервер, и для каждого запроса читать файл index.html
и обслуживать этот
Поэтому, когда запрос равен http://localhost:8080/css.css
, он не не различайте.
Я бы рекомендовал прочитать о создании серверов в узле немного больше. Но решение состоит в том, чтобы использовать express в качестве сервера.
var http = require("http");
var fs = require("fs");
var express = require("express");
var app = express();
app.use("/", express.static("public"));
app.listen(8080, ()=>{
console.log('Server started');
})
Это будет прекрасно работать ДАЙТЕ этот индекс. html НАХОДИТСЯ В ПУБЛИЧНОЙ ПУБЛИКАЦИИ C
Из do c,
Например, используйте следующий код для обслуживания изображений, CSS файлов и JavaScript файлов в каталог с именем publi c:
app.use(express.static('public'))
Теперь вы можете загружать файлы, которые находятся в каталоге publi c:
Обратите внимание, если ваши файлы находятся в вашем проекте root, вы можете использовать:
app.use("/", express.static("."));