修改fdfs的存储位置遇到的bug

把fdfs的data移位到另一个目录,需要修改对应的三个配置storage.conf、tracker.conf、mod_fastdfs.conf

因为漏改mod_fastdfs里的store_path0信息导致可以往fdfs存储照片却不能通过浏览器访问

[2021-02-03 10:23:05] ERROR - file: fastdfs-nginx-module/src//common.c, line: 870, file: /nginx/fastdfs/data/00/00/rBLmEGAaCPmAIRVhAAujEu8u8TY191.jpg not exist

粗心了,记录一下改bug过程中遇到的其他问题

重启nginx过程中一直报错

 nginx: [alert] kill(25903, 1) failed (3: No such process)

通过在sbin里输入./nginx可以得知一下信息,很明显,80,3344端口被占用了

nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use)
nginx: [emerg] bind() to 0.0.0.0:3344 failed (98: Address already in use)

但是通过ps -ef | grep nginx,找不到对应的nginx程序,因此通过kill -9 这个命令是无法杀死该nginx进程的

可以通过一条新的命令,可以把80端口程序杀死

sudo fuser -k 80/tcp

也有另一种可能就是conf里的备份文件导致nginx不能正常启动,因为里面写有80端口,可以尝试让那些配置文件不生效

chmod -x 文件名

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
要使用Java操作FastDFS,你需要引入FastDFS的Java客户端库。可以使用Maven或者直接下载jar包的方式导入库文件。在pom.xml文件中添加以下依赖项: ``` <dependency> <groupId>net.oschina.zcx7878</groupId> <artifactId>fastdfs-client-java</artifactId> <version>1.27.0.0</version> </dependency> ``` 然后,你需要编写一个Java工具类来操作FastDFS。可以参考以下代码: ``` import java.io.IOException; import org.csource.common.MyException; import org.csource.fastdfs.ClientGlobal; import org.csource.fastdfs.FileInfo; import org.csource.fastdfs.StorageClient; import org.csource.fastdfs.StorageServer; import org.csource.fastdfs.TrackerClient; import org.csource.fastdfs.TrackerServer; public class FastDfsUtil { private static TrackerClient trackerClient = null; private static TrackerServer trackerServer = null; private static StorageServer storageServer = null; private static StorageClient storageClient = null; static { try { ClientGlobal.init("fdfs_client.conf"); trackerClient = new TrackerClient(); trackerServer = trackerClient.getConnection(); storageClient = new StorageClient(trackerServer, storageServer); } catch (Exception e) { e.printStackTrace(); System.out.println("FDFS工具初始化失败!"); } } public static FileInfo getFileInfo(String savepath) throws IOException, MyException { String group = ""; // 存储组 String path = ""; // 存储路径 try { int secondIndex = savepath.indexOf("/", 2); // 第二个"/"索引位置 group = savepath.substring(1, secondIndex); // 类似:group1 path = savepath.substring(secondIndex + 1); // 类似:M00/00/00/wKgBaFv9Ad-Abep_AAUtbU7xcws013.png } catch (Exception e) { throw new RuntimeException("传入文件存储路径不正确!格式例如:/group1/M00/00/00/wKgBaFv9Ad-Abep_AAUtbU7xcws013.png"); } FileInfo fileInfo = storageClient.get_file_info(group, path); return fileInfo; } } ``` 在上述代码中,我们使用FastDFS的Java客户端库,初始化一个TrackerClient、TrackerServer和StorageClient实例。然后,可以调用getFileInfo方法来获取文件信息,传入文件的存储路径作为参数。该方法会返回一个FileInfo对象,包含了文件的信息。
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值