0

我已经设置了一个 windows 2003 ftp 服务器并使用 chilkat 在我的自定义应用程序中连接到这个 ftp。我的应用程序是在 VB6 中开发的,具有 chilkat 的 ftp 支持。该应用程序适用于城市的不同地方并连接到我的 ftp。无法使用自定义应用程序从一些网络(如 idea netsetter / bsnl)访问 ftp 和传输文件。它在其他网络上完美运行。

提前致谢。

问候,山姆

4

2 回答 2

0

这可能是客户端或服务器上的防火墙配置。您将无法对客户端做很多事情,但对于服务器,它可能取决于您是在进行主动还是被动 FTP 连接。

如果您正在进行活动连接,请确保端口 20 和 21 已打开。

如果您正在进行被动连接,您可能需要查看这篇关于在 Server 2003 FTP 中配置 PassivePortRange 的文章 - http://support.microsoft.com/?id=555022

于 2013-08-07T17:46:39.290 回答
0

这很可能是客户端的防火墙问题。FTP 经常被防火墙阻止。

同样,FTP 也存在一些问题,使其成为不太理想的替代方案。有更好的选择,例如 SFTP 或 FTPS,但在 Windows 中对它们的支持有限,您必须同时购买服务器和客户端才能使用其中之一。

更少的防火墙阻止 HTTP 和 HTTPS,尽管有些防火墙足够挑剔,可以阻止看起来不像 Web 浏览的流量。Stiil,你成功的几率大大增加。

一个明显的选择可能是使用 WebDAV。IIS 支持 WebDAV,并且基于许多可用的 HTTP 组件之一在 VB6 中编写简单的 WebDAV 客户端逻辑非常容易。我可能会为此使用 XmlHttpRequest 或 WinHttpRequest。搜索应该会出现几个 VB6 类,这些类被编写来包装其中一个以支持 WebDAV 客户端操作。您还可以购买 WebDAV 客户端库。

坚持使用 HTTPS(这意味着您需要一个用于 IIS 的服务器证书),并且您不会有密码通过网络以明文形式传输。即使你使用 HTTP,你也不会比使用 FTP 更糟糕,而且它可以通过绝大多数防火墙,除了那些专门阻止非浏览 HTTP 请求的防火墙。

于 2013-08-06T13:01:53.247 回答