如何使用ASP建立虚拟的FTP服务器

2016-01-29 18:50 6 1 收藏

如何使用ASP建立虚拟的FTP服务器,如何使用ASP建立虚拟的FTP服务器

【 tulaoshi.com - ASP 】

 

  在ASP中采用组件或无组件上传技术,均可以实现文件的上传功能。由此我们可以采用ASP的无组件上传技术,在我们自己的网站上建立一个虚拟的FTP服务器,象真正的FTP服务器一样,为多个用户提供远程文件的管理,同时各个用户只能操作自己的文件。

  当文件上传的时候,ASP可以采用FSO或数据库方式来保存文件数据(有些服务器并没有提供FSO功能)。这里我采用数据库来保存用户所上传的文件,采用数据库的优点我就不说了,总之很多。还有一个原因就是IIS限制了文件上传的大小(大概最大200KB吧),使用数据库方式可以采用续传技术突破这个限制,可以上传很大的文件,很大很大,无限大,……。

*****************
(哈哈,废话讲了一大堆,下面先讲讲实现的原理和方法,然后再讲使用软件实现的方法)
*****************

● 第一步:在服务器上建立一个数据库(ACCESS、SQL-SERVER、MYSQL均可以),简单一点就ACCESS吧。数据库内建立两个表:
  上传用户管理用:admin(ID, Name, Password, Type)
  保存上传文件数据:files(ID, ParentID, FileName, FileLength, FileType, FileData, UpDate, UserID)。
  如果FileLength=0,则表示其为文件夹,并且为每个用户建立一个根文件夹。

● 第二步:建立用户登陆页面,并使用SESSION将用户的ID保存起来,用于限制其对文件的操作。
  Session("Name") = list("SName")
  Session("UID") = list("ID")

● 第三步:建立用户主页面(显示用户上传过的文件)
  strSQL = "SELECT * FROM files WHERE ParentID=" & userRootID ' userRootId 为用户根文件夹的ID
  strSQL = strSQL & " AND UserID=" & SESSION("UID")
  strSQL = strSQL & " ORDER BY FileName"

● 第四步:上传文件页面
  list.AddNew
  list("ParentID") = userRootID
  list("FileName") = Form("Name")
  list("FileLength") = Form("Length")
  list("FileType") = Form("Type")
  list("FileData").AppendChunk MidB(sdata,Form("Start"),Form("Length"))
  list("UserID") = Session("UID")
  list("UpDate") = Now()
  list.Update

● 第五步:文件管理操作(使用文件的ID对文件进行表识,并且对用户的操作进行限制)
  删除:"DELETE * FROM files WHERE ID=" & iID & " AND UserID=" & Session("UID")
  下载:"SELECT * FROM files WHERE ID=" & iID & " AND UserID=" & Session("UID")

Set conn = Server.CreateObject("ADODB.Connection")
conn.Open myConnStr
Set list = conn.Execute("SELECT * FROM files WHERE ID=" & iID & " AND UserID=" & Session("UID"))
If NOT list.EOF Then
If list("FileLength") 0 Then
  Response.AddHeader "Content-disposition", "inline; filename=" & list("FileName")
  Response.ContentType = list("FileType")
  Response.Binarywrite(list("FileData").GetChunk(list("FileLength")))
End If
End If

● 再完成一些其他的辅助操作页面即可。当然由于浏览器的限制,文件上传的续传技术不能直接使用,只能通过客户端软件来实现。网络上有个软件叫“上传文件管理器”(包含ASP源代码),实现了上面的功能。下面我们将讨论如何利用这个软件来建立我们自己的虚拟FTP服务器。

(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/asp/)

软件下载地址:http://www.blue999.com/webfiles/uploadfiles_setup.exe

***************
(很复杂吧,简单点,下面看一下使用“上传文件管理器”实现虚拟FTP服务器的方法)
***************

● 1、下载软件安装后,将随软件提供的ASP文件使用FTP软件上传到网站上(如上传到 webfiles 下)

(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/asp/)

● 2、执行客户端软件,并将服务器路径设置成上传的文件夹,超级管理员的用户名和密码均为 admin

来源:http://www.tulaoshi.com/n/20160129/1507501.html

延伸阅读
标签: 服务器
LINUX下搭建FTP服务器   1、FTP服务器的简介 关于ftp的介绍,大家也一定不陌生了。我就直接把百度百科上的介绍拿过来,和大家一起温习一下概念。 FTP 是File Transfer Protocol(文件传输协议)的英文简称,而中文简称为文传协议。用于Internet上的控制文件的双向传输。同时,它也是一个应用程序(Application)。基于不同的操...
标签: 服务器
如何设置FTP服务器共享访问权限 利用ftp服务器软件架设好FTP服务器后,不要以为就万事OK了。我们还需要对信息上传目录的访问权限进行合适设置,以确保每一个部门的员工只能使用特定帐号登录、访问各自的信息传输目录,下面就是具体的设置步骤: 首先按照前面步骤打开Internet信息服务窗口,在该窗口的左侧显示区域,用鼠标右键单击目...
标签: ASP
  使用索引服务器的对象 你可以象使用其它数据库一样使用索引服务器,也就是Index Server,它是IIS4中包含的内容索引引擎。你可以对它进行ADO调用并搜索你的站点,它为你提供了一个很好的web 搜索引擎。 它非常容易使用。你只需要声明对象,然后对引擎进行调用,然后引用你所请求的属性、栏和值。 那么,怎样做以上这些工...
标签: 服务器
win7iis怎么搭建ftp服务器 win7iis搭建ftp服务器教程   win7iis怎么搭建ftp服务器?win7自带的iis搭建简单的FTP服务器,系统版本需是win7旗舰版,其它版本貌似不带iis。下文小乐哥给大家分享win7iis搭建ftp服务器教程,一起来学学吧! win7iis搭建ftp服务器教程 第一步:依次进入控制面板–程序和功能–打开或关闭w...
标签: ASP
  重庆出版社电脑中心 陈刚 1.什么是ASP服务器组件 ASP(Active Server Page)是当今开发交互式Web页面、Web数据库应用最强大的技术。在其中可以混用HTML、DHTML、 ActiveX、VBScript或JavaScript。当这些技术都无法奏效时(例如进行高密度的数学运算、封装特定的数据库处理逻辑 等),可以使用服务器组件(Server SideComponent)进一...