历时:6小时。其实以前都装过的,所以感觉还没有怎么走弯路。这个东西有点复杂,需要对servU FTP PHP MYSQL都有了解。
感觉作者的说明文档还是有点不清晰,虽然这个插件真的很不错,但是安装的复杂程度让人却步。
我的笔记也只是部分内容:
1、整理服务器。
web服务器: ip1 使用mysql数据库db1 用户名user1 密码 password1
ftp服务器: ip2 安装mysql数据库bbsftp 用户名user2 密码 password2 需要安装sevU 4.0以上版本。也就是说你能完全控制这个机器。
2。在ftp服务器上启动mysql,安装数据库bbsftp和FTP开头的表格,代码如下:
create database bbsftp;
use bbsftp;
CREATE TABLE FTPBuyPassword (
FTP varchar(50) NOT NULL ,
UserName varchar(50) NOT NULL ,
IP varchar(50) NOT NULL
);
CREATE TABLE FTPConfig (
ID int(11) NOT NULL auto_increment ,
FTPAnnounce TEXT NULL ,
FTPName varchar(255) NOT NULL ,
FTP varchar(50) NOT NULL ,
FTPURL varchar(50) not null default '',
LinkName varchar(50) NOT NULL ,
UserName varchar(50) NULL ,
PassWord varchar(50) NULL ,
MaxUser int not null default 50 ,
NumPerIP int not null default 1 ,
UserSpeed int not NULL default 0 ,
Type int not NULL default 0 ,
Value int not NULL default 10 ,
BuyCount int not NULL default 0 ,
LastUpdatePassWord datetime not NULL default 'NOW()' ,
ExpireTime datetime NULL ,
PRIMARY KEY (ID)
);
CREATE TABLE FTPDirAccess (
IDX int NOT NULL ,
AccessString varchar(255) NOT NULL ,
OrderID int NOT NULL
);
CREATE TABLE FTPIPAccess (
IDX int NOT NULL ,
AccessString varchar(255) NOT NULL ,
OrderID int NOT NULL
);
CREATE TABLE FTPUserConfig (
ID int(11) NOT NULL auto_increment ,
UserName varchar(50) NOT NULL ,
HomeDir varchar(255) NOT NULL ,
LogMes varchar(255) NULL ,
RelPaths bit DEFAULT 1 NOT NULL ,
HideHidden bit DEFAULT 1 NOT NULL ,
AlwaysLogin bit DEFAULT 0 NOT NULL ,
MaxLoginPerIP int default 0 not NULL ,
MaxDownPerIP int default 0 not null,
MaxUpPerIP int default 0 not null,
MaxUpSpeed int DEFAULT 500 NULL ,
MaxDownSpeed int DEFAULT 50 NULL ,
MaxUsers int NULL ,
SessionTimeOut int NULL ,
IdleTimeOut int NULL ,
GroupNames varchar(255) NULL ,
IPAccess varchar(255) NULL ,
DirAccess varchar(255) not NULL ,
PRIMARY KEY (ID)
);
CREATE TABLE FTPUserOnline (
FTP varchar(50) NOT NULL ,
FTPUserFlag varchar(100) NOT NULL ,
IP varchar(50) NOT NULL ,
LoginTime datetime NOT NULL ,
SessionID int NOT NULL ,
UserName varchar(50) NOT NULL
);
CREATE TABLE FtpBBSFTPConfig (
ID int(11) NOT NULL auto_increment ,
CheckMD5 bit DEFAULT 1 NOT NULL ,
CheckSFV bit DEFAULT 1 NOT NULL ,
CheckZIP bit DEFAULT 1 NOT NULL ,
DisableUserControl bit DEFAULT 0 NOT NULL ,
EnableCheck bit DEFAULT 1 NOT NULL ,
EnableLog bit DEFAULT 1 NOT NULL ,
EXT varchar(255) NULL ,
LogFileDown bit DEFAULT 1 NOT NULL ,
LogFileDownMinSize int DEFAULT 1000 NOT NULL ,
LogFileUp bit DEFAULT 1 NOT NULL ,
LogFileUpMinSize int DEFAULT 50 NOT NULL ,
LogIPLogin int DEFAULT 0 NOT NULL ,
LogUserLogin int DEFAULT 1 NOT NULL ,
MarkUpload bit DEFAULT 1 NOT NULL ,
PasswordType int DEFAULT 1 NOT NULL ,
ShowDirNFO bit DEFAULT 1 NOT NULL ,
SiteName varchar(255) NULL ,
TopUpload int DEFAULT 5 NOT NULL ,
UpdateInterval int DEFAULT 2 NOT NULL ,
NoView bit default 0 not NULL ,
EnableDiskTopUpload bit default 1 not null ,
PRIMARY KEY (ID)
);
CREATE TABLE FtpLog_DownLoadFiles (
ID int(11) NOT NULL auto_increment ,
FTP varchar(50) NULL ,
FileName varchar(255) not NULL ,
FileSize int NULL ,
UserName varchar(50) NULL ,
IPAddress varchar(50) NULL ,
Time datetime NULL ,
Flag int(2) DEFAULT 0 ,
UsedTime float NULL ,
PRIMARY KEY (ID)
);
CREATE TABLE FtpLog_IPLastLogin (
UserName varchar(50) not NULL ,
FTP varchar(50) NULL ,
IP varchar(50) NULL ,
LastTime datetime NULL
);
CREATE TABLE FtpLog_Login (
UserName varchar(50) not NULL ,
FTP varchar(50) NULL ,
IP varchar(50) NULL ,
LastTime datetime NULL
);
CREATE TABLE FtpLog_Statistic (
ID int(11) NOT NULL auto_increment ,
StartTime datetime NULL ,
UpLoadFileSize float not NULL default 0 ,
UpLoadFileCount float not NULL default 0 ,
DownLoadFileSize float not NULL default 0 ,
DownLoadFileCount float not NULL default 0 ,
LoginTimes float not NULL default 0 ,
ConnectionTimes float not NULL default 0 ,
EndTime datetime not NULL ,
UpTime float not NULL default 0 ,
DownTime float not NULL default 0 ,
PRIMARY KEY (ID)
);
CREATE TABLE FtpLog_UpLoadAbort (
ID int(11) NOT NULL auto_increment ,
FTP varchar(50) NULL ,
FileName varchar(255) NULL ,
FileSize int NULL ,
UserName varchar(50) NULL ,
IPAddress varchar(50) NULL ,
Time datetime NULL ,
Flag int(2) DEFAULT 0 ,
UsedTime float NULL ,
PRIMARY KEY (ID)
);
CREATE TABLE FtpLog_UpLoadFiles (
ID int(11) NOT NULL auto_increment ,
FTP varchar(50) NULL ,
FileName varchar(255) NULL ,
FileSize int NULL ,
UserName varchar(50) NULL ,
IPAddress varchar(50) NULL ,
Time datetime NULL ,
Flag int(2) DEFAULT 0 ,
UsedTime float NULL ,
PRIMARY KEY (ID)
);
CREATE TABLE FtpLog_UpLoadTemp (
ID int(11) NOT NULL auto_increment ,
FTP varchar(50) NULL ,
FileName varchar(255) NULL ,
FileSize int NULL ,
UserName varchar(50) NULL ,
IPAddress varchar(50) NULL ,
Time datetime NULL ,
Flag int(2) DEFAULT 0 ,
UsedTime float NULL ,
PRIMARY KEY (ID)
);
CREATE TABLE FtpLog_UserLastLogin (
UserName varchar(50) NULL ,
FTP varchar(50) NULL ,
IP varchar(50) NULL ,
LastTime datetime NULL
);
CREATE TABLE FtpLog_UserStatistic (
UserName varchar(50) NOT NULL ,
FTP varchar(50) NOT NULL ,
LoginTimes float not NULL default 0 ,
KBDown float not NULL default 0 ,
KBUp float not NULL default 0 ,
FDown float not NULL default 0 ,
FUp float not NULL default 0 ,
UpTime float not NULL default 0 ,
DownTime float not NULL default 0
);
CREATE TABLE FtpLog_DiskStatistic (
ID int(11) NOT NULL auto_increment ,
UserName varchar(50) not null ,
FDisk varchar(255) NOT NULL ,
FTP varchar(50) NOT NULL ,
KBDown float not NULL default 0 ,
KBUp float not NULL default 0 ,
FDown float not NULL default 0 ,
FUp float not NULL default 0 ,
UpTime float not NULL default 0 ,
DownTime float not NULL default 0 ,
PRIMARY KEY (ID)
);
CREATE TABLE Ftplog_FtpStatistic (
ID int(11) NOT NULL auto_increment ,
FTP varchar(50) NOT NULL ,
ConnectionTimes float not NULL default 0 ,
DownLoadFileCount float not NULL default 0 ,
DownLoadFileSize float not NULL default 0 ,
EndTime datetime NULL ,
LoginTimes float not NULL default 0 ,
StartTime datetime NULL ,
UpLoadFileCount float not NULL default 0 ,
UpLoadFileSize float not NULL default 0 ,
UpTime float not NULL default 0 ,
DownTime float not NULL default 0 ,
SelleGB bigint DEFAULT 0 NOT NULL ,
WebClick bigint DEFAULT 0 NOT NULL ,
Seller varchar(50) not NULL default '-' ,
State varchar(50) not NULL default '<font color=blue>正常</font>' ,
Flag int not NULL default 0 ,
PRIMARY KEY (ID)
);
CREATE TABLE FtpUserDown (
ID int(11) NOT NULL auto_increment ,
UserID bigint default 0 not null ,
LinkName varchar(50) NOT NULL ,
UserName varchar(50) NULL ,
UserPassword varchar(20) NULL ,
FTP varchar(50) NULL ,
MaxDownSize float not NULL default 0 ,
AllowIP varchar(50) not NULL default '*' ,
MaxDownSpeed int not NULL default 0 ,
QuotaUsed float not NULL default 0 ,
QuotaMax float NOT NULL default 0 ,
DisableUser bit not null default 0,
ExpireTime datetime null,
PRIMARY KEY (ID)
);
ALTER TABLE FtpUserDown MODIFY UserPassword varchar(40) NULL ;
ALTER TABLE FtpUserDown Add MaxDownThreads int not NULL default 0;
3、上传 serv插件.rar到ftp 的serv安装目录,解压文件。
其中 ServUDaemon.ini 修改或者增加:
[EXTERNAL]
EventHookDLL1=bbsftp.dll
ClientCheckDLL1=bbsftp.dll
bbsftp.INI 设置:这里设置的server地址是FTP的地址和数据库信息(关键的地方)
;数据库连接字符串
;FTP用户账号存储数据库
UserDB=DRIVER={MySQL ODBC 3.51 Driver};SERVER=127.0.0.1;DATABASE=bbsftp;UID=user2;PWD=password2; OPTION=3
;插件主数据库
PlusDB=DRIVER={MySQL ODBC 3.51 Driver};SERVER=127.0.0.1;DATABASE=bbsftp;UID=user2;PWD=password2; OPTION=3
4。需要在FTP所在机器上安装mysql odbc 3.51 的驱动程序。
这里下载:http://dev.mysql.com/get/Downloads/MyODBC3/MyODBC-3.51.11-1-win.exe/from/pick
5。重启ftp serv 至此 FTP上需要进行的步骤基本完毕。
6。论坛的插件安装比较简单,先在数据库db1中安装一个数据表,名字是bbsftp,然后上传插件程序到DZ/plugin目录、配置插件等。
发表评论