C#操作FTP报错,远程服务器返回错误:(550)文件不可用(例如,未找到文件,无法访问文件)的解决方法...

最近在做项目的时候需要操作ftp进行文件的上传下载,但在调用using (var response = (FtpWebResponse)FtpWebRequest.GetResponse())的时候总是出现"远程服务器返回错误:(550)文件不可用(例如,未找到文件,无法访问文件)"的异常。在网上也没有找到好的解决方案,于是自己研究了下给解决了,分享给大家,希望对大家能有所帮助。

异常信息

这种情况是因为FTP设置的默认目录引发的,以我现在的项目为例,在程序中我要访问的路径为 ftp://192.168.0.225/2007/35/0037/00001/1.jpg 这个路径,但服务器上设置的默认路径为 E:\pmserver\FTPServer\FTPSERVER ,

 

我们打开相应的ftp目录看下,这个目录下面并没有我要访问的2007这个文件夹

那2007这个文件夹在什么位置呢?可以看到,2007这个文件夹是在ftpserver的上一级目录,而ftp设置的默认目录为ftpserver里,也就是说在程序中默认打开的目录对应的物理地址是E:\pmserver\FTPServer\FTPSERVER,您也看到了,E:\pmserver\FTPServer\FTPSERVER目录下根本就没有2007的文件夹,所以就会抛出异常"远程服务器返回错误:(550)文件不可用(例如,未找到文件,无法访问文件)"。

解决方法其实很简单,设置下服务ftp的默认路径即可 (IIS配置的ftp也是一样的)

在通过程序进行访问,可以看到已经获得到了文件流信息。

转载于:https://www.cnblogs.com/homezzm/p/3612955.html

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值