首页 新闻 搜索 专区 学院

能够实现通过 B/S 到 FTP 服务器的上传下载么?

0
悬赏园豆:60 [已解决问题] 解决于 2010-02-08 12:05

我已经在 C/S 程序里测试成功,能够实现 FTP 服务器的上传下载,

可是当我通过 B/S 模式上传下载时候,会提示错误,

而且获取的 FTP 里的文件列表页跟从 B/S 里获取的文件列表不相同,

从 B/S 里获取的文件列表明显少了很多,

就下载而言,也只能下载到网站的服务器上,不能下载到客户端上,

是不是 B/S 就是不能实现 FTP 文件的上传下载呢?

 

感谢各位大大过来留下脚印....

XueM的主页 XueM | 初学一级 | 园豆:120
提问于:2010-01-30 18:32
< >
分享
最佳答案
0

你的问题如果我没理解错,应该不难。

如果如2楼所言,你暴露了(提供了)ftp相关登录信息,那么可以用 url 的形式,使得 Web 的使用者,以客户端的形式直接连接到 ftp Server 进行类似你的 bs 方式的下载,只是 url 自动调用 ie 等下载器进行协议解析,而不是使用你的程序而已。

如果你是需要 web 服务器连接到 ftp 服务器下载,再转给 web 客户端,这个也可以,出于安全考虑,这样的形式不能说没有意义。你现有的实现其实是实现了一半,即下载到了 web 服务器,接下来就是让 web 客户端再从服务端下载了;这个基本上就不用代码的事,你只要给你 web 服务器上的 ftp 下载好的临时文件一个 url,那么客户端点击的时候就能下载了。

比如:自定义ftp连接地址:myftp://server=127.0.0.1&file=folder/mytest.txt,那么你的 web 服务器下载到某临时文件夹 c:/WebRoot/temp/,你的 Web 根目录是 c:/WebRoot/,下载完成后, web 客户端只要点击连接 http://www.yourwebsitehome.com/temp/mytest.txt 就会直接通过 http 下载了。

客户端要求ftp下载时,采用 ajax 轮询 web ,服务器下载完成后就转给客户端临时文件进行下载。

=====================================

如果不考虑安全,自然二楼方案最好。

收获园豆:20
陛下 | 老鸟四级 |园豆:3938 | 2010-02-01 22:10
其他回答(2)
0

如果你写的是服务端代码,那当然只能下载到服务器。

如果能够写在客户端(貌似很难实现),那就可以客端。

收获园豆:20
canbeing | 园豆:1287 (小虾三级) | 2010-01-30 18:57
0

在客户端,只要url这样写就行了:ftp://username:password@url

但是会暴露ftp用户名和密码,所以,怎么设账号就看安全性了。

收获园豆:20
路过秋天 | 园豆:4763 (老鸟四级) | 2010-01-31 21:45
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册