就像其他人所说的-不要使用FTP-它有很多很多问题。OTOH,您可能应该使用不需要用户安装其他客户端软件的协议。尽管基于ssh的访问(sftp,scp)是理想的选择,但MSWindows机器并未标配客户端。
有没有文件管理器结束 PHP编写的(也可能是其他语言太)提供。IIS对NTLM权限进行隧道处理时,IIS会做一些非常奇怪的事情-但是,如果您使用的是Apache,它应该是相当安全的-但是,访问驱动器并不像从\ server \ username \中读取文件那样简单-您需要允许这些文件的Web服务器管理员权限-但这是安全噩梦!
我这样做的方式(对于非常不同类型的应用程序)是使用来自用户PHP会话的用户名/密码通过smbclient处理I / O-但这是在Linux计算机上-AFAIK,MSWindows上没有等效功能。
当然,您可能希望使用用户提供的凭据来对存储进行身份验证。
这正迅速变得可怕而复杂!
因此,一种实际的解决方案是允许学生在Internet上映射驱动器。这样,您就不必担心提供文件管理器的复杂性,而文件管理器不是操作系统的组成部分(即可以从应用程序直接访问)。但是,您不想将服务器公开给任何人和所有人。解决此问题的通常方法是使用VPN-并且有很多好的和低成本的。或仅通过客户端证书身份验证将服务包装在SSL中。但这又需要客户端安装。
所以.....
如何通过Web表单在IP地址上对用户进行身份验证,然后在防火墙中创建一个限时漏洞,以便该IP地址通过SMB连接(而且他们仍然需要提供用户名/密码来映射驱动器) 。