IIS 6 服务器不允许 ncftpget 递归下载文件

IIS6 server not allowing ncftpget to download files recursivelly

我正在使用装有 IIS 6.0 的 Windows 2003 旧服务器。该服务器上目前有一个 FTP 站点正在生产中,我需要添加另一个我使用虚拟目录所做的站点。我可以手动登录,深入浏览多个目录并一次下载一个文件而不会抛出任何错误。但是,当我尝试递归下载时,它只会抓取我指定的远程目录根目录中的文件和文件夹。我在另一台 Windows 2003 服务器上有相同的目录结构 运行,并且使用相同的批处理脚本递归下载所有内容都没有问题,所以我确定问题不在于此。对于下一步要研究什么,我完全不知所措。我已验证我正在登录的用户对整个目录结构具有 windows 权限,我什至启用了匿名访问并将 IUSR 帐户设置为对整个目录树也具有完全控制权,但不幸的是。

我还应该提一下,也没有返回任何错误消息。我还查看了服务器上的日志文件,那里也没有显示任何错误,只是它实际下载的每个文件和文件夹的记录,没有提到它跳过的那些。如果有人好奇的话,我用来下载的客户端是 ncftpget。我在应用程序中使用它,因此无法更改客户端,同一客户端正在另一台具有相同参数的服务器上使用,没有问题。

IIS 支持两种不同格式的目录列表。 MS-DOS 和 UNIX。也许这就是不同之处。 ncftpget 可能对 MS-DOS 格式有问题。确保您选择了 UNIX 格式。

在您的站点面板中转到 FTP > FTP 目录浏览 > 目录列表样式 > UNIX:

无法让 ncftpget 递归下载,尽管在具有相同配置的另一台服务器上没有问题。重写代码以使用 wget 代替递归下载最终会更快。