无法连接到本地 pyftpdlib FTP 服务器:[WinError 10061] 无法建立连接

Cant connect to local pyftpdlib FTP server: [WinError 10061] No connection could be made

我正在尝试 upload/download 文件到本地 FTP 服务器,但它给了我标题中提到的错误。 对于我使用的服务器 pyftpdlib:

import os

from pyftpdlib.authorizers import DummyAuthorizer
from pyftpdlib.handlers import FTPHandler
from pyftpdlib.servers import FTPServer

# instantiate a dummy authorizer 
authorizer = DummyAuthorizer()

# instantiate anonymous user to current directory
authorizer.add_anonymous(os.getcwd())

# FTP handler class
handler = FTPHandler
handler.authorizer = authorizer

# setup server on localhost, port = 21
address = ('', 21)
server = FTPServer(address, handler)

# set a limit for connections
server.max_cons = 10
server.max_cons_per_ip = 3

# start ftp server
server.serve_forever()

这是客户端代码:

from ftplib import FTP

# connect to FTP server
client = FTP(host="127.0.0.1")
client.login()

# list the contents of directory
client.retrlines('LIST')

但是 FTP 构造函数抛出:

ConnectionRefusedError: [WinError 10061] No connection could be made because the target machine actively refused it.

一开始我以为是端口问题(连接时我没有指定客户端的端口),所以将服务器端口改为21,我认为这是默认端口。

当运行 服务器代码时,我收到防火墙警报,但当我授予它权限时它运行正常。如何从客户端连接到服务器?

我不确定 '' 作为地址在服务器端有什么作用。要么它首先是一个错误的值。或者它可能解析为与 127.0.0.1 不同的 IP 地址。您应该在服务器端和客户端使用相同的值。

我将从服务器端的 127.0.0.1 开始。

address = ('127.0.0.1', 21)