Пожалуйста, используйте
app.use(express.static(path.join(__dirname, './public')));
вместо
app.use(express.static(path.join(__dirname, '../public')));
Конечно, есть некоторые проблемы в работе со статическими файлами
Как я могу включить CSS-файлы, используя node, express и ejs?
Но из вашего проекта проблем нет
Интересная история: ПОЧЕМУ Мы не можем найти ../public
неверный путь.
С помощью Chrome Inspect мы можем подумать, что есть какая-то ошибка типа MIME.
???:
Хотя для express.static
нет файлов, экспресс отправляет сообщение как
<code><!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>Error</title>
</head>
<body>
<pre>Cannot GET /css/styles.css
вместо 404 .
=>
Итак, мы запутались, и мы не можем обнаружить, что нет styles.css
.
Мы можем отладить с http://localhost:3000/css/styles.css
, тогда мы можем найти Cannot GET /css/styles.css
.
Таким образом, мы можем найти ../public
неверно и исправить с помощью ./public
.