Ich habe einen node.js Server mit weniger Middleware ausgeführt. Von meinem Verständnis kompiliert es im laufenden Betrieb und legt die CSS-Datei im Ziel/gleichen (wenn nicht angegeben) Ordner.weniger-Middleware nicht kompilieren, bekommen 404
Mein Problem ist, ich bin immer einen 404-Fehler auf der GET-Anforderung für die CSS-Datei:
Err: GET http://webserver/public/less/blog-reset.css 404 (Not Found)
Hier ist das, was ich arbeite mit:
web. js
//requiring dependencies
var express = require("express");
var logfmt = require("logfmt");
var lessMiddleware = require('less-middleware');
var hogan = require('hogan-express');
var path = require('path');
//all environments
var app = module.exports = express();
var port = Number(process.env.PORT || 5000);
app.use(logfmt.requestLogger());
app.use(lessMiddleware(path.join(__dirname,'public')));
app.use(express.static(path.join(__dirname,'public')));
app.set('layout',path.join(__dirname,'src','views','blog-layout'));
app.enable('view cache');
app.engine('.html',hogan);
//page routing called after env loads
require('./src/router');
//listening port
app.listen(port, function() {
console.log("Listening on " + port);
});
Blog-layout.html
<head>
<title>EpiBlog</title>
<link href='/public/less/blog-reset.css' rel='stylesheet' type='text/css'/>
</head>
<body>
{{{yield}}}
</body>
Verzeichnisstruktur
ROOT
public
less
src
web.js
Versionen
- weniger Middleware v0.2.1-beta
- express v4.0.0
Was ich versucht habe:
app.use(lessMiddleware)({ src: __dirname + '/public' }));
mit (scheinbar die alte Art und Weise, es zu tun)app.use(lessMiddleware(path.join(__dirname,'public','less')));
- mit
app.use(express.static(path.join(__dirname,'public')));
von web.js zu router.js bewegen - liebäugelt mit unterschiedlichen Pfade
- Verschieben von Inhalten von router.js ins Web.js
- Angabe des Ziel mit
dies:
app.use(lessMiddleware(path.join(__dirname, 'source', 'less'), {
dest: path.join(__dirname, 'public')
}));
Ich habe die gleichen Probleme – Tirithen
@Tirithen danke. Ich bin jetzt seit 2 Tagen dabei. Ich werde diese Frage weiter aktualisieren, während ich gehe. Wir werden dieses bekommen! <3 SO – 13ruce1337