Apache FtpServer是一個純Java編寫的Ftp伺服器,能夠方便的整合到J2EE項目中。採用這種整合方式無需在伺服器端配置專門的FTP伺服器。它的使用也是很方便的。首先從官網http://mina.apache.org/ftpserver/downloads.html,下載合適的版本,解壓縮,見:
由於Apache FtpServer是有java編寫的,所以,在使用之前還需要配置java_home環境變數。步驟如下:
1、右擊我的電腦-->系統屬性,選擇進階面板-->環境變數,建立java_home,變數值為安裝java的安裝路徑;
2、在系統變數中找到Path,在變數值最後增加;%java_home%\bin;%java_home%\jre\bin 注意:分號表示與前面分割,如果前面沒有可以不加;
3、建立classpath,變數值為.;%java_home%\lib;%java_home%\lib\tools.jar (要加.表示當前路徑)”;
4、以上三個變數設定完畢,則按“確定”直至屬性視窗消失,下來是驗證看看安裝是否成功。先開啟“開始”-->“運行”,打入“cmd”,進入dos系統介面。然後打“java -version”,如果安裝成功,系統會顯示java的版本資訊。
下面就是配置Apache FtpServer了。%FTP-SERVER_HOME%\res\conf中users.properties可以設定FTP Server的主要屬性。以anonymous為例
#使用者名稱為anonymous,密碼為123456ftpserver.user.anonymous.userpassword=123456#homedirectory是FTP的路徑,就是串連到FTP伺服器時,可以訪問的根目錄 ftpserver.user.anonymous.homedirectory=./res/homeftpserver.user.anonymous.enableflag=true#writepermission是否可以上傳檔案 ftpserver.user.anonymous.writepermission=falseftpserver.user.anonymous.maxloginnumber=20ftpserver.user.anonymous.maxloginperip=2#idletime為最大等待時間 ftpserver.user.anonymous.idletime=300#uploadrate是上傳的速度,位元組/每秒 ftpserver.user.anonymous.uploadrate=4800#downloadrate是下載速度,位元組/每秒 ,此處的單位我已經經過測試,是正確的,轉化成即為4.8k/s,“0”表示不限制ftpserver.user.anonymous.downloadrate=4800
向ftpd-typical.xml修改如下配置:
<server xmlns="http://mina.apache.org/ftpserver/spring/v1" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation=" http://mina.apache.org/ftpserver/spring/v1 http://mina.apache.org/ftpserver/ftpserver-1.0.xsd " id="myServer" max-logins="5" anon-enabled="false" max-anon-logins="0" max-login-failures="3" login-failure-delay="30000"> <listeners> <nio-listener name="default" port="21"> <ssl> <keystore file="./res/ftpserver.jks" password="password" /> </ssl> </nio-listener> </listeners> <file-user-manager file="./res/conf/users.properties" /></server>
在安裝目錄中建立一個run.bat檔案,內容為:
d:D:\apache-ftpserver-1.0.6bin/ftpd.bat res/conf/ftpd-typical.xml
如果啟動失敗的話,可能是連接埠被佔用的問題,可以先檢查一下。