Мое первое приложение не работает с css, даже если я установил express.static () и указал правильный путь - PullRequest
0 голосов
/ 08 сентября 2018

Как видно из заголовка, я пытаюсь создать приложение для первого узла и столкнулся с проблемой.

Вчера все работало нормально. Теперь, когда я открыл свой компьютер, я получил «Ресурс, интерпретируемый как Таблица стилей, но перенесенный с MIME-типом text / html:» http://localhost:3000/css.css"."

Я нахожу это очень странным, потому что я ничего не редактировал, и он перестал работать.

app.js

/*Libraries*/

var express = require("express"),
    app     = express()

/*Routes*/
    var indexRoute = require("./routes/index");
    app.use(indexRoute);
/*Modeles*/


/*Configuration*/
app.set("view engine", "ejs");
app.use(express.static('public'));

app.listen(3000, function() {
    console.log("==================================");
    console.log("===Serverul a pornit cu succes!===")
    console.log("==================================");
});

index.js

var express = require("express"),
    router = express.Router()

router.get("*", function(req, res) {
        res.render("index/404");
});

module.exports = router;

404.ejs

<% include ../../partials/header %>
    <section id="container-404" class="container-fluid">
        <div class="row">
            <div class="col-12">
                <h1 class="display-1">404</h1>
            </div>
        </div>
    </section>
<% include ../../partials/footer %>

header.ejs

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <link rel="stylesheet" href="/reset.css">
    <link rel="stylesheet" href="/fontawesome-all.min.css">
    <link href="https://fonts.googleapis.com/css?family=Alegreya+Sans:400,800" rel="stylesheet">
    <link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.1.3/css/bootstrap.min.css" integrity="sha384-MCw98/SFnGE8fJT3GXwEOngsV7Zt27NXFoaoApmYm81iuXoPkFOJwJ8ERdknLPMO" crossorigin="anonymous">
    <link rel="stylesheet" href="/css.css">
    <title>Best DavNic73</title>
</head>
<body>

Структура папок:

root {app.js

partials> footer.ejs, header.ejs

public> css.css и 2 других файла css

маршруты> index.js

views> index> 404.ejs}

1 Ответ

0 голосов
/ 08 сентября 2018

У вас сейчас есть следующий маршрут -> 404 -> public Это означает, что маршрут 404 перехватывает все запросы, общедоступный маршрут не может быть достигнут. Вы должны монтировать обработчики в правильном порядке:

  app.use(express.static('public'));
  app.use(indexRoute);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...