Express.static在阿里云centos不起作用
发布于 6 年前 作者 FourLeafClover 2482 次浏览 来自 问答

我使用了express.static添加了静态资源路由。在本地windows上localhost的时候是可以通过文件夹路径可以访问文件夹里面的资源。但是部署到阿里云centos服务器的时候发现通过文件夹路径无法访问资源。报错404。在centos直接通过localhost访问也无法获取。express其他接口都可以正常访问。请问一下是什么原因,服务器的node版本和本地windows电脑一致。请问一下是什么原因。window和linux不一样吗。 image.png

5 回复
app.use(express.static(path.join(__dirname, 'public')));

windows和linux的区别大了啊,比如路径,一个区分大小写,一个不区分 路径分隔,换行(换行好像是有的时候能兼容,有的不能) 都有区别

@nnliang @JsonSong89 @xiaoyu311 非常感谢各位回答我的问题,我已经找到原因了。文件我是通过winscp上传上去的。winscp默认是不开启utf-8上传的。我的文件夹有一部分是中文文件夹。在winscp里面中文文件夹正常显示。但是再centos cmd里面中文文件夹就乱码了,导致文件找不到404。我修改了winscp默认上传使用utf-8就可以正常支持中文了。 PS: 因为想做一个博客网站,不想建立数据库。所以就按照文件夹去给文章做分类。就出现了使用中文文件夹的场景。 image.png

回到顶部