ftplib问题(无法打开数据连接)
大家好,
我正在使用一个简单的程序,该程序将文件上传到远程FTP服务器上.
这是一个示例(不是整个程序):
def商店(self,主机名,用户名,密码,destdir,srcp ath):
self.ftp = ftplib.ftp(主机名)
self.ftp.login(用户名,密码)
self.ftp.set_pasv(false)
self.ftp.cwd(destdir)
fobj = file(srcpath," rb")
destname = os.path.split(srcpath)[1]
self.ftp.storbinary(" stor"+destname,fobj)
FTP服务器无法使用被动连接,我无能为力
关于那个.这是问题:我可以从
我的家用计算机,是NAT防火墙后面的.我也可以连接到
它是从另一台计算机上的,但我无法上传任何文件.我试过了
使用简单的" FTP -V -D"命令行调试,显然是
问题在于" EPRT"命令:
ftpls
--- EPRT | 1 | 195.228.74.135 | 55749 |
200端口命令成功.
- -列表
425无法打开数据连接.
ftp>
好吧,EPRT给出的端口号不好 - 它是此的封闭端口
计算机.我可以为此打开一个小端口范围,但我不喜欢
打开所有端口并完全禁用防火墙.
这是我的问题:
1.如何指示FTPLIB使用特定端口进行传入
连接? (例如,端口在55000和56000之间).
2.同一程序如何从另一台计算机起作用
那是NAT防火墙的后面?
谢谢,
laszlo