express 搭建的ejs模板静态文件找不到not found!!!!

最近在学习用node.js 写ejs模板项目,用本地服务器跑项目。学习过程中,遇到很多问题,基本在网上都能找到答案。但是有一个问题找了半天,最后还是自己解决的。
就是在用app.use(express.static(__dirname, '/public'))加载本地的静态文件。代码是没问题的,但是项目跑起来, 在控制台的Source可以看到中是没有那些静态文件的。项目中用到的图片not found. index.ejs里引用的js也没有生效。最后发现问题的原因原来是引用的静态文件的路径有问题。我的项目文件是这样的


demo.png

所有的静态文件都放在public下 所以 在真正用到里面的文件时 路径应该是/js/lazyload; /css/css.css .....我后来想想,确实应该是这样,因为项目跑在服务器上时,你的文件应该只有public下的文件 所以引用里面的静态文件,是以根目录public为参考的,所以在携写代码的时候, 相对整个项目路径是错误的,才会导致文件找不到!

你可能感兴趣的:(express 搭建的ejs模板静态文件找不到not found!!!!)