今天又折腾了一下FTP(参考链接),使用了虚拟用户映射为Linux用户的方法,看起来更加安全了。 在实验室的服务器上配置好FTP服务器之后,尝试使用我的台式机打开FTP进行文件上传下载,然而用浏览器是可以打开的,用Windows的资源管理器打开时却报错。
注意,这是在我Windows 7 64位的电脑上实践的结果,其他系统有待验证。
错误0:要对FTP站点启用文件夹视图
该错误是个基础错误,后续的错误1、2的出现和修改是在该错误正确配置的前提下。要想使用Windows资源管理器打开FTP站点,必须启用文件夹视图。 FTP 站点启用文件夹视图,请执行如下步骤(见参考资料4):
启动 Internet Explorer。 在工具菜单中,单击 Internet 选项。 在高级选项卡上,单击选择对 FTP 站点启用文件夹视图复选框。
错误1:Windows无法打开指定文件夹
即使错误0中你正确开启FTP文件夹视图后,仍有错误“Windows无法打开指定文件夹。请确定你输入的文件名是否正确,以及是否具有该文件的访问权限”,然后就是文件框就是空白的。经过一番Google之后,得到了参考文献2的内容,就按照正确回答进行了相关操作。即:
打开资源管理器,右击“计算机”,点击“添加一个网络位置”,如图1; 点击“下一步”,再“下一步”,如图2; 在框里输入网址,这里是FTP地址,即如 ftp://211.211.211.211,点击“下一步”后,我的竟然又提示出错了!也就是错误2。
注意:错误1也可能是密码有保留字符,即密码不能包含一些特殊字符,有at 符号 (@)、冒号 (:) 或正斜线 (/),见参考资料4.
错误2:你输入的文件夹名字似乎是无效的
输入ftp地址后Windows提示,”你输入的文件夹名字似乎是无效的“。简直开玩笑,明明跟示例里是一样的啊,无数次输入、再确认,依旧如此。无奈只能再次Google(Baodu就算了,搜不出来的),就得到了参考资料1。读后发现,发帖者跟我一样的问题,也是提示了文件夹名字无效,幸好帖子里有正确答案,如图3。
正确回答里说是谷歌浏览器引起了该问题,为了修复这个bug需要更改注册表,然后给了一段代码,粘贴在下面,然后执行即可。
Windows Registry Editor Version 5.00[HKEY_CLASSES_ROOT\ftp]@="URL:File Transfer Protocol""AppUserModelID"="Microsoft.InternetExplorer.Default""EditFlags"=dword:00000002"FriendlyTypeName"="@C:\\Windows\\system32\\ieframe.dll,-905""ShellFolder"="{63da6ec0-2e98-11cf-8d82-444553540000}""Source Filter"="{E436EBB6-524F-11CE-9F53-0020AF0BA770}""URL Protocol"=""[HKEY_CLASSES_ROOT\ftp\DefaultIcon]@=hex(2):25,00,53,00,79,00,73,00,74,00,65,00,6d,00,52,00,6f,00,6f,00,74,00,25,\00,5c,00,73,00,79,00,73,00,74,00,65,00,6d,00,33,00,32,00,5c,00,75,00,72,00,\6c,00,2e,00,64,00,6c,00,6c,00,2c,00,30,00,00,00[HKEY_CLASSES_ROOT\ftp\shell]@="open"[HKEY_CLASSES_ROOT\ftp\shell\open]
结束语
简单的FTP却出现了很多问题,幸好Google后大部分得以解决。其实还有个方法,即使用其他专业的FTP工具,如LeapFTP、FTPFXP等等,只是还得额外安装。要常折腾,还要多Google(虽然被Chrome坑了)。
参考资料
1./en-us/windows/forum/windows_7-networking/ftp-server-error-the-folder-you-entered-does-not/2d919979-badd-4134-909e-645028fe56b8
2./en-us/windows/forum/windows_vista-windows_programs/ftp-folder-error/63d56e2d-c42e-451e-921a-8171d34b1912?auth=1
3./html//linuxkaiyuan_0722/832.html
4./kb/260156