我的app.js文件很重要:
var express = require('express');
var profile = require('./controllers/profile-controller'); //require my controller (profile-controller.js)
app.use(express.static(path.join(__dirname, 'public')));
app.use('/user', profile);
当我去' mysite.com/user' - 它运行正常,但是当我去了mysite.com/user/user1'时,我的CSS和图像无法加载。这是我的控制器文件:
var express = require('express');
var router = express.Router();
// route for www.mysite.com/user
router.get('/', function(req, res, next) {
res.render('profile',{ title: 'Profile' });
});
// route for www.mysite.com/user/user1
router.get('/:id([A-Za-z0-9_]{5})', function(req, res, next) {
var id = req.params.id;
res.render('profile',{ title: 'Profile' });
});
module.exports = router;
那么为什么我对两个页面都有相同的路径,但其中一个工作正常,但第二个给静态文件404?
答案 0 :(得分:1)
在src="images/wow.png"
文件中,您有/user/user1
,这是图像资源的相对路径。因此,当您转到/user
时,它只会将src="images/wow.png"
添加到您的图片资源路径中。
而不是src="/public/images/wow.png"
尝试src="/images/wow.png"
或[tool:pytest]
。