C#编程无法使用FTP被动模式pasv远程上传数据至Windows服务器错误解决分享
来源:互联网 发布:ubuntu退出root 编辑:程序博客网 时间:2024/04/29 00:22
最近接了个新任务,其中有个环节是使用ftp上传数据到服务器,呵呵!朋友们想节省时间走捷径,FTP Server就用Windows 2008 Server内置的FTP服务搭建,结果在部署测试时报错差点崩溃,查阅大量资料也没找到合理的答案,在此存档为大家节省时间。
- 关键词:ftp port 21 pasv 501 channel windows System.Net.WebException
- 任务:FTP远程上传--使用C#编程采用被动模式(PASV)上传数据至Windows 2008操作系统自带的FTP服务器非标准21端口
- 测试环境:
FTP Client OS:Windows 7,未使用第三方FTP Client软件;
FTP Server OS:Windows 2008,使用Windows 2008 FTP服务,FTP服务使用端口21210(非标准21端口)。
- 故障现象:
- Command下ftp登录成功后查看dir等命令出现“150 Opening ASCII mode data connection.”停滞无法继续,Ctrl+C后出现“终止所有活动的数据连接...
425 Cannot open data connection.”- System.Net.WebException: 远程服务器返回错误: (501) 参数或变量中有语法错误
- 英文类似错误:501 Server cannot accept argument
- 原因分析:
无法使用pasv被动模式上传数据,专家们众说纷纭,经过测试观察,自Win7 Client上传数据到Win2008 Ftp Server,既然21端口可以正常使用PASV被动模式上传,改到21210端口后就不能正常使用PASV被动模式上传,能够说明Windows Client actually support passive mode,倒是Windows 2008 Ftp Server站点在改用其它端口后仍然部分使用21端口通信的可能性更大一些,时间仓促,究竟是Windows FTP服务的bug或是设计者有意而为之,恐怕解铃还须系铃人...
- 推论与建议:
外部公网环境下Windows FTP Server与FTP Client之间协商应该尽量使用常规端口21(局域网环境测试Windows FTP Server改用其它端口可正常使用PASV模式),建立ControlChannel或DataChannel,若改用类似21210等其它端口将不能正常使用PASV被动模式。
阅读全文
0 0
- C#编程无法使用FTP被动模式pasv远程上传数据至Windows服务器错误解决分享
- FTP主动被动模式(PORT PASV)
- FTP中主动模式(port)与被动模式(PASV) (转载)
- ftp中主动模式(port)与被动模式(PASV)
- ftp中主动模式(port)与被动模式(PASV)
- ftp中主动模式(port)与被动模式(PASV)
- ftp中主动模式(port)与被动模式(PASV)
- ftp的主动模式(port)与被动模式(PASV)
- ftp-主动模式(PORT)和被动模式(PASV)
- VMware Workstation建立FTP服务器并使用PASV模式
- Serv-U FTP 设置支持被动(PASV)模式连接
- 服务器端口设置 远程登录,IIS FTP被动模式
- 使用python-ftp协议上传数据到远程服务器
- 如何为被动模式 FTP 服务器配置 Windows 防火墙
- 如何为被动模式 FTP 服务器配置 Windows 防火墙
- FTP 服务器主被动模式
- FTP基础知识 FTP port(主动模式) pasv(被动模式) 及如何映射FTP
- FTP基础知识 FTP port(主动模式) pasv(被动模式) 及如何映射FTP
- ThinkPHP5学习(6)请求和响应
- 字符串插空来满足每个词都是单词集中的词
- XML文档解析(解决方法)
- 解决RStudio中"plot.new() : figure margins too large"问题
- Gradle for Android
- C#编程无法使用FTP被动模式pasv远程上传数据至Windows服务器错误解决分享
- Web应用的控制器而言(Action是控制器),不访问Servlet API几乎是不可能的
- c3po数据库连接池简单配置
- JSONObject中optString和getString等的区别
- 【办公-excel】两个时间相减
- 多线程-生产者消费者之等待唤醒机制代码优化
- PAT 1009. 说反话
- Python 基础 之list
- JavaMail