【问题标题】:c# app FTP error : "227 Entering Passive Mode"c#app FTP错误:“227进入被动模式”
【发布时间】:2011-10-10 19:47:39
【问题描述】:

我无法弄清楚我在客户的网站上遇到的这个问题。客户端有两个站点,并且都运行相同版本的我的应用程序。在一个站点没有问题,但在另一个站点尝试从 FTP 站点下载文件时,我开始不断收到以下错误:

“227 进入被动模式(...)”

我一直在阅读 SO 和 Google,但无法找出问题所在。我想放弃这个客户,因为他们只是在花钱。我正在使用 .NET 3.5 中包含的 FTP 功能。

关于可能发生什么的任何线索?网络安全最终会发生变化吗?

【问题讨论】:

    标签: c# ftp passive-mode


    【解决方案1】:

    使用客户端 ftp 进行测试,但只能在活动模式下进行。

    停用此功能: 在工具 - 互联网选项 - 高级 - “使用被动 FTP(用于防火墙和 DSL 调制解调器)”

    【讨论】:

      【解决方案2】:

      为避免该错误,只需使用 reqFTP.UsePassive = false;

      reqFTP.UsePassive = false;
      

      查看下方

                      FtpWebRequest ftpRequest = (FtpWebRequest)WebRequest.Create("ftp://127.0.0.1/1542");
                      ftpRequest.Credentials = new NetworkCredential("6584", "123456");
                      ftpRequest.Method = WebRequestMethods.Ftp.ListDirectory;
                      ftpRequest.UsePassive = false;
                      FtpWebResponse response = (FtpWebResponse)ftpRequest.GetResponse();
                      StreamReader streamReader = new StreamReader(response.GetResponseStream());
      
                      List<string> directories = new List<string>();
      
                      string line = streamReader.ReadLine();
                      while (!string.IsNullOrEmpty(line))
                      {
                          directories.Add(line);
                          line = streamReader.ReadLine();
                      }
      
                      streamReader.Close();
                      return true;
      

      【讨论】:

        【解决方案3】:

        进入被动模式端口时出现防火墙问题?可以用 Filezilla 连接到 FTP 服务器吗?

        【讨论】:

          【解决方案4】:

          您可能会超时,您检查防火墙了吗?它可能会阻止您的连接。

          【讨论】:

            猜你喜欢
            • 2013-09-25
            • 1970-01-01
            • 1970-01-01
            • 2019-02-04
            • 1970-01-01
            • 2019-08-05
            • 2013-03-09
            • 1970-01-01
            相关资源
            最近更新 更多