我正在尝试使用 pyftpdlib 模块在 python 中运行 ftp 服务器。出现的问题是它显示“150 文件状态正常。即将打开数据连接”。然后永远保持这种状态,直到服务器超时。
我通过 cmd 登录,使用 ftp 命令。
PL帮助。
这是服务器代码:
import os
import sqlite3
from pyftpdlib import ftpserver
def main():
authorizer = ftpserver.DummyAuthorizer()
ftp_auth_table="H:\\ftp_auth_table1.db"
connection=sqlite3.connect(ftp_auth_table,isolation_level=None)
cursor=connection.cursor()
cursor.execute('''SELECT * FROM ftp_auth_table1''')
entry=cursor.fetchall()
# change os.gtcwd() with ftp_actv_dir
for x in entry:
authorizer.add_user(x[1], x[2], "H:/MS EVERYTHING", perm='elradfmwM')
# Instantiate FTP handler class
handler = ftpserver.FTPHandler
handler.authorizer = authorizer
handler.banner = "pyftpdlib %s based ftpd ready." %ftpserver.__ver__
address = ('127.0.0.1', 21)
ftpd = ftpserver.FTPServer(address, handler)
ftpd.max_cons = 256
ftpd.max_cons_per_ip = 5
# start ftp server
ftpd.serve_forever()
if __name__ == '__main__':
main()