我们知道FTP协议与HTTP协议一样,都可以用“协议://地址:端口/路径/文件名”这样的一个字符串来表示一个资源,比如ftp://127.0.0.1:21/test/file.txt,这就是一个资源,一个FTP资源。其中 ftp://127.0.0.1:21表示了服务器的相关信息,比如服务器IP为127.0.0.1,监听21端口等等。

上面讲FTP这么多,跟启用虚拟主机名有什么关系呢?
在早之前,要在一个服务器上建立两个FTP站点,只能将使其监听不同的端口。比如ftp://127.0.0.1:21/和ftp://127.0.0.1:2121,这样就可以建立两个FTP站点了。

如果我们两个FTP站点都想使用21端口,肿么办呢?
其实还可以更高级一点,我们可以引入虚拟主机的概念。我们知道,如果要在IIS开设多个WEB站点,那么要么端口不同,要么为各个站点设置不同的虚拟主机名(即域名)。IIS7.5的最大的进步就在于,对了FTP,IIS使用了跟WEB一样的机制,可以为FTP站点设置虚拟主机名,这样一个IIS上就可以建多个相同端口的FTP站点了。比如ftp://www.splaybow.com:21和ftp://www.xxx.com:21,就可以同时存在了。 好了,大家应该明白这个虚拟主机名的选项有着什么样的意义了。

那么如果我们配置一个ftp站点时设置了虚拟主机名,那么使用时要注意什么呢?
其实,使用时要注意,登录的用户名必须要使用域名|用户名的形式。比如ftp://www.splaybow.com:21,假如用户名是splaybow,那么登录时的用户名就必须为:www.splaybow.com|splaybow。如果你不加域名在前面,登录时就会提示目录没有权限哦!如:home directory inaccessible.