GET http://localhost:3000/product/css/reset.css 404 (Not Found) sdf:13 GET http://localhost:3000/product/css/bootstrap.min.css 404 (Not Found) sdf:14 GET http://localhost:3000/product/css/bootstrap-responsive.css 404 (Not Found) sdf:15 GET http://localhost:3000/product/css/docs.css 404 (Not Found)
我在模板里面a标签写了<a href="/product/{{_id}}" class="home-title"></a>
,对应的路由可以获取到数据,但是加载静态资源的时候为什么会从product开始获取,而不是定义好的public,如果把product/{{_id}}改成productabc/{{_id}}那么就会从productabc获取,很奇怪。不知道为什么,求解!
app.use('/product', express.static(__dirname + '/public'));
或者资源地址改成
http://localhost:3000/css/reset.css
@ravenwang 十分感谢大神,我加了app.use('/product', express.static(_dirname + '/public'))
,可以了,但是现在app.js文件里面会有两个static配置项:
app.use(express.static(_dirname + '/public'))``app.use('/product', express.static(_dirname + '/public'))
。
问题是,如果我想再写一个路由是/blog/:id,那么是不是还要再写一个app.use('/blog', express.static(_dirname + '/public'))
呢,如果还会有更多的路由还得再写对应数量的资源配置吗?
@moJiXiang 这种情况应该在public下建 product , blog 等文件夹放各自的静态文件,然后直接 app.use(express.static(__dirname + '/public'))