Express中图片必须放在public目录下吗?
发布于 9 年前 作者 upupzealot 5600 次浏览 最后一次编辑是 8 年前 来自 问答

新人求教,正在跟着教程一步步学习做Demo,搭建一个基于Express的多人博客站点。 比如用户上传的头像之类的,如果都放在public下,组织上会不会有点乱? 还有一个问题就是,这个图片目录需要组织吗?还是说所有图片都一股脑儿丢进去得到url,然后再到DB中去组织数据结构呢?

8 回复

可以自己定义,在app.js里面修改。

这个跟你APP.JS的配置有关系啊app.use(’/public’,express.static(path.join(__dirname, ‘public’)));

用 multer 可以自定义上传的文件放在哪里。文件多的话就分子目录放。

@1340641314 @DavidCai1993 @wizali @leapon 谢谢回复,我想问的是,能不能将图片放在两个目录中。例如: public中只存放站点本身需要用到的图片,比如网站的Logo; upload中存放用户上传的文件,例如他们的头像。

其实光光把图片放到upload目录(与public平级)中是可以的,不过那样貌似不能通过URL来显示了

其实这么做主要是想用目录的结构来大体呈现网站图片的分布结构,如果都用随机的URL存到表里来记录的话,对程序来说可能没什么区别,但是万一有时候想要自己进FTP找点啥就比较麻烦了,也不知道这么做会有什么问题,请大家指教。

你在public下面建两个目录不行?

不试试云存储吗

@kpmving 最后肯定要扩展到云储存上,不过规模起来之前应该还是会存在本地,何况我也是刚刚接触Node,循序渐进地来吧。

回到顶部