【问题标题】:CSS3 file 404 - - Node.JS and EJSCSS3 文件 404 - - Node.JS 和 EJS
【发布时间】:2018-12-21 04:45:22
【问题描述】:

我知道这似乎是重复的,但我已经查看了其他答案,但它们对我不起作用。这是我的代码:

NodeJs:

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

mongoose.connect("mongodb://localhost/e_c");

app.use(express.static(__dirname+"public"));
app.use(express.static(__dirname+"partials"));

var blogSchema = new mongoose.Schema({
  title: String,
  author: String,
  pictureForTitle: String,
  content: String
});

var blog = mongoose.model("blog",blogSchema);

app.set("view engine","ejs");

  app.get("/",function(req,res){
    res.render("home");
  });

  app.listen(process.env.PORT,process.env.IP);

Head.ejs:

<html>
<head>
    <link rel="stylesheet" type="text/css" href="/public/css/styles.css">
</head>
<body>
<nav id="navBar">
    <div id="aboutSite">
        <p>About This Site</p>
        <div id="aSDropContent">
            <p>About The Author Of This Site</p>
            <p>Why The Author Created This</p>
        </div>
    </div>
</nav>

如您所见,我已经尝试过 express.static。但它不起作用。我什至尝试从/查看以前的项目复制/查看。

非常感谢, 乔什 C.

【问题讨论】:

  • 您的 CSS 文件是否存在于 [ROOT]/public/css/styles.css?如果没有,您可能正在寻找一个相对 URL:href="public/css/styles.css".
  • 是的,当然!我检查了很多次。不过,谢谢。
  • 如果您将href更改为"css/styles.css"是否有效?如果还是不行,请删除app.use(express.static(__dirname+"partials"));,只留下app.use(express.static(__dirname+"public"));,然后重试。
  • 两个都试过了,但都没有用。不过,谢谢。
  • 如果 html 加载正常,则尝试在 URL 前使用 href="./public/css/styles.css" 点来表示当前目录

标签: javascript css node.js ejs


【解决方案1】:

我遇到了同样的问题,并通过将“public”替换为“/public”来修复它

app.use(express.static(__dirname+"/public"));

href="/css/styles.css"

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-07-16
    • 2016-02-24
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多