1.检查fastdfs配置
2个文件的port必须一致 ,path 必须存在
2.检查nginx配置
user root; 需要加上;因为我这里配置了两个server, 所以访问需要加上8888端口
上传图片测试的时候也会返回路径
复制到浏览器访问即可
3.真相
2021年5月28日
时隔半年,又回到了这里把踩的坑填上。这次发现了真正的问题所在,果然东西不用是也发现不了问题的。
当运行测试删除文件方法时,报了一个错,根据错误看到源代码发现group_name必须要带group,这也是为什么使用插件会404的原因所在
@Test
void delete() {
fastFileStorageClient.deleteFile("gudong/M00/00/00/wKgFDGCw8xaAbNr7AABLh3eTJkg803.png");
System.out.println("deleted successfully!!!");
}
// 在测试删除时报错 解析错误,发现组名必须带group
private static int getGroupStartPos(String filePath) {
int pos = filePath.indexOf("group");
if (pos == -1) {
throw new FdfsUnsupportStorePathException("解析文件路径错误,被解析路径url没有group,当前解析路径为".concat(filePath));
} else {
return pos;
}
}
解决:检查并修改所有配置gudong改为group2,重新启动最后成功了。
nginx这里也不需要自己配路径了,改回用ngx_fastdfs_module插件寻找路径
重新加载nginx /usr/local/nginx/sbin/nginx -s reload ,验证成功