[英]Nginx/Nodejs/Handlebars static files 404
我有一个带把手的 nodejs 应用程序,以及一个位于 ubuntu 服务器上的 nginx 反向代理。 无论我使用什么app.use(express.static('public'))和链接样式表的组合,我都只会在样式表上得到 404。 这是我的代码:
const express = require('express')
const path = require('path');
const hbs = require('hbs');
const app = express();
app.set('view engine', 'hbs');
app.use(express.urlencoded({ extended: true }))
app.use(express.static('public'));
hbs.registerPartials(path.join(__dirname, 'views/partials'));
app.get('/', async (req, res) => {
if (req.query.prompt) {
prompt = req.query.prompt;
}
res.render('index', {
prompt: prompt,
});
})
app.listen(8080, () => console.log('Listening on port 8080.'))
还有这个:
<!DOCTYPE html>
<html lang="en">
<head>
<title>Title</title>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link href="https://cdn.jsdelivr.net/npm/bootstrap@5.2.3/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-rbsA2VBKQhggwzxH7pPCaAqO46MgnOM80zW1RWuH61DGLwZJEdK2Kadq2F9CUG65" crossorigin="anonymous">
<link rel="stylesheet" type="text/css" href="index.css">
</head>
<body>
<img src="profile.jpg" alt="photo">
</body>
</html>
任何帮助将不胜感激,是的:这个问题有很多潜在的重复但没有任何帮助我:/
我已经尝试了 /public、/index.css、/public/index.css 等的所有组合。
我找到了修复,它不是 nodejs 或 handlebars——它在我的服务器块中删除了以下行:
try_files $uri $uri/ =404;
我会把它留给任何可能觉得有用的人。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.