一个FastDFS整合Java的坑

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接: https://blog.csdn.net/LitongZero/article/details/88696744

一个FastDFS整合Java的坑

背景

本篇博客的主要目的,就是记录一个有关FastDFS整合Spring(Java)时的坑

事发环境

1、FastDFS 5.08安装成功,服务器端测试没问题

测试命令

 fdfs_test /etc/fdfs/client.conf  upload   /usr/local/tools/a.jpg 

结果

在这里插入图片描述

2、FastDFS整合Nginx完毕

Nginx配置

http {
    include       mime.types;
    default_type  application/octet-stream;
    sendfile        on;
    keepalive_timeout  65;
    server {
        listen       80;
        server_name  localhost;
        location / {
            root   html;
            index  index.html index.htm;
        }
        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }

        location ~ /group[1-3]/M00 {
            root /usr/local/tools/fastdfs/storage0/data;
            ngx_fastdfs_module;
        }
    }
}

访问图片成功

在这里插入图片描述

3、SpringBoot工具类没问题

工具类参照的是纯洁的微笑大佬的工具类

大佬的工具类地址
之所以说工具类没问题,是因为,我试了下朋友的FastDFS服务器,可以上传。

4、每次测试都报错

测试用例

public static void main(String[] args) {
     byte[] file_buff = null;
     try {
         File file = new File("E:\\lt\\lt.png");
         InputStream inputStream = new FileInputStream(file);
         if (inputStream != null) {
             int len1 = inputStream.available();
             file_buff = new byte[len1];
             inputStream.read(file_buff);
         }

     FastDFSFile fastDFSFile = new FastDFSFile("lt.png",file_buff,"png");
     String[] upload = FastDFSClient.upload(fastDFSFile);
     String path = FastDFSClient.getTrackerUrl() + upload[0] + "/" + upload[1];
     System.out.println(path);
     } catch (IOException e) {
         e.printStackTrace();
     }

 }

结果,每次都是连接失败

在这里插入图片描述

我试了三种工具类,都不行。

问题解决

再试了N种方法,包括:检测端口,更换工具类,重启Nginx,修改Nginx,开放22122端口,关闭防火墙…

最终,发现问题原因,是因为服务器中storage.conftracker.conf的ip地址出现了问题!

我在搭建时,ip地址写的都是内网地址,再一一改成外网地址后,终于可以上传了!!!

猜你喜欢

转载自blog.csdn.net/LitongZero/article/details/88696744