以前习惯于用filezilla作为windows的ftp服务器,但是现在新版本的filezilla已经不支持windows2003了,所以趁机试一下iis配置ftp服务器。
前面都是很常规的配置
参考这里:http://jingyan.baidu.com/article/5bbb5a1b36951f13eaa17956.html
给新添加的用户设置权限
-
打开FTP站点--右键权限
-
吧刚刚添加的用户,写到下面的对话框,点击确定
-
设置权限
-
为了保险起见,吧FTP站点重启一下!
好!到这里就完成了,可以在浏览器或者文件目录下通过:
ftp://ip地址:端口 eg:ftp://191.0.0.52:9998
来访问啦!
那么,问题来了,按照上面的步骤,选择中间的隔离用户方式配置完成后,并不能正常访问,此时心中冒出一个疑问,ftp到底哪家强?
经过度娘,找到了解决问题的关键:http://blog.sina.com.cn/s/blog_5fdcf5c901012mma.html
在server 2003新建ftp用户并开启IIS的Ftp功能之后,有时在连接这个ftp的时候会出现530 User 用户名 cannot log in home directory inaccessible的错误,网上一般的解决方法是ftp目录是否存在,用户权限是否设置正确等等。但是经常是这些都是设置正确的,却还是出现这样的 错误提示。 其实原因是在新建IIS-FTP的时候选择了隔离用户,而在你选择的FTP文件夹却和这个用户相关的文件夹不同,所以自然就会出现这个提示,而找不到解决方法了。 这个就涉及到server 2003的FTP文件夹的设定和命名有相当严格的规范。 举个例子,如果你想为用户abc在server 2003下开通一个IIS-FTP服务 目录设定为E:\\FTP里。除了安装IIS和FTP组件及相关配置正确之外,你还应该在FTP文件夹中建立一个子文件夹。命名为LocalUser,然 后在LocalUser文件夹中再建立一个子文件夹,命名为abc,即你要开通FTP服务的用户名。 这样当用户abc运行FTP服务登录到server 2003时,会自动进入到E:\\FTP\\LocalUser\\abc文件夹目录下,这也就很好解释为什么最初会报出530 User 用户名 cannot log in home directory inaccessible的错误了。因为不这样设定的话 E:\\FTP\\LocalUser\\abc的目录根本就不存在。 另外如果我们打算允许FTP站点提供匿名登录的话,还应在LocalUser目录下另建一个public的子目录。同理,匿名登录的用户将自动进入到D:\\FTP\\LocalUser\\public目录中。 这样设置对一个服务器多个人使用的情况下非常有用,除此之外,你还可以在IIS中设置每个FTP对应的网站的流量,连接数等等限制来合理分配服务器资源。
总结:
在ftp属性里面主目录的文件夹下,建立
LocalUser/ftp用户名来命名的文件夹
这就可以了。
另外别忘了修改ftp端口号。以及取消匿名访问。