在做的一个项目中需要用到FTP的文件上传功能,组长给我推荐了一款开源项目叫eXtplorer,它是一个用php写的ftp上传组件,前台用的是ExtJS,正合和我们这个项目的风格匹配,于是就down下来折腾了一把http://extplorer.sourceforge.net/
1.环境搭建:
下载php5.X ,apache 2.0.X,这里要注意下php和apache的版本问题,我之有没用过php,所以刚开始配置时总是不成功,最后google了下原为是版本问题,至于php和apache的搭建方法,网上资料很多的,有兴趣的朋友可以去查一下。
2.标准的ext界面:
3.登录后,它有两种模式,file模式和ftp模式
这里主要讨论下ftp模式的用法:
首先是ftp模式下的目录设置,按照它的安装文档上说的,必须在ftp服务器上建立一个explorer文件夹,然后在建一个子文件夹也叫explorer,我试过许多次,确实要严格按照文档上的操作,不然就上传不成功,也或者是我操作的方法不对,有使用过的朋友可以指点下。
4.相应修改源码
大家可以去找一下eclipse的php的插件,netbeans也有一个php的开发环境,25M左右
对于一个商业软件,你的用户肯定不希望在系统中看到第三方的logo,所有extplorer里的一些不必要的图片,和按钮是你首先要去掉的 对应的文件在"D:\Apache2\htdocs\eXtplorer\scripts\application.js.php"里,这个页面里包含了几乎全部的在页面显示的按钮和图片,可以根据你的需要做适当的修改。
5.上传到ftp后无法删除的问题
我在使用中发现extplorer的权限分配功能不是很好使,分配的权限不起什么作用,文件上传后无法删除,没办法看了下源码:"D:\Apache2\htdocs\eXtplorer\include\delete.php",发现是它本身路径问题没处理好的问题,当然也有可能是我的操作方法不对,欢迎大家一起讨论,我的解决办法有点撮,$dir = "E://".$dir; 手动指定ftp上传的根目录。
6.中文文题
这个问题几乎在开发所有的中文软件中都会遇到的一个问题,还好extplorer对国际化支持的比较好,它有一个文件夹叫languages,里面包含了许多国家的国际化文件,我们这里用到的当然是simplified_chinese.php,大伙可以根据需要对里面的键值做相应的修改.
但是,也是我现在还没解决的一个问题, 文件上传到ftp服务器后,在extplorer的页面中显示正常,在ftp服务器上却显示乱码,我以前commons-net-ftp-2.0写上传文件时也碰到过这个问题,字符编码的问题,可惜我对php不熟,解决结果明天传上来。
今天先到这,希望和有兴趣的朋友一起讨论下extplorer的使用。