在 FTP 站点中使用虚拟目录

虚拟目录是服务器硬盘上通常不在主目录下的物理目录或另一台计算机上的主目录的好记的名称或别名。由于别名通常要比物理目录的路径名短,更便于用户输入。使用别名也很安全,因为用户不知道文件在服务器上的物理位置,所以便无法使用这些信息来修改文件。使用别名也可以更方便地移动站点中的目录。无需更改目录的 URL,而只需更改别名与目录物理位置之间的映射。

使用别名的另一个好处在于可以发布多个目录下的内容以供所有用户访问,单独控制每个虚拟目录的读/写权限。

如果 FTP 站点包含的文件位于主目录以外的某个目录或在其他计算机上,必须创建虚拟目录将这些文件包含到您的 FTP 站点中。要使用其他计算机上的目录,您必须指定该目录的通用命名约定 (UNC) 名称并提供验证用户权限的用户名和密码用户权限。

要从未包含在主目录中的任何目录进行发布,则必须创建虚拟目录。例如,假定您要在公司的 Intranet 上为营销团队建立一个网站。下表显示了文件的物理位置与访问这些文件的 URL 之间的映射关系。

物理位置别名URL
C:\Inetpub\Ftproot 主目录(无) ftp://SampleFTPSite
\\Server2\SalesData Customers ftp://SampleWebSite/Customers
D:\Marketing\PublicRel PR ftp://SampleFTPSite/PR

虚拟目录和物理目录(不带别名的目录)都显示在 IIS 管理器中。已修改文件夹图标表示虚拟目录。下图显示了上述的 FTP 站点示例,其中 /Customers 和 /PR 均为虚拟目录。

示例 FTP 站点以标有已修改文件夹的虚拟目录出现在 IIS 管理器中。

对于一个初级 FTP 站点,通常不需要添加虚拟目录。只需将所有文件放在该站点的主目录中即可。如果站点比较复杂,或者需要为站点的不同部分指定不同的 URL,则可以根据需要添加虚拟目录。要从多个站点访问某个虚拟目录,必须为每个站点添加虚拟目录。

要点 要点 对于匿名用户,必须将虚拟目录映射到在工作文件夹下为匿名用户专门创建的文件夹上,例如,C:\inetpub\ftproot\localuser\public。
如果要为使用用户隔离的站点设置虚拟目录,可以设置每用户虚拟目录,因为所有的用户都被隔离于自己的工作目录中。例如,如果 USER1 的工作文件夹为 C:\inetpub\ftpRoot\localuser\USER1,您希望 USER1 访问您创建的虚拟目录,则虚拟目录应映射到上述路径中的文件夹上。在这种情况下,其他用户均无法访问该虚拟目录,除非他和 USER1 使用相同的工作目录。
如果要为站点设置使用 Active Directory® 目录服务的用户隔离虚拟目录,并且 USER1 的工作文件夹映射到 \\computer\User1Share 上,那么您必须创建映射到该路径下文件夹的虚拟目录,在这种情况下,只有将工作文件夹映射到上述路径的用户才能访问虚拟目录。

有两种创建或删除虚拟目录的方法:

要点 要点 您必须是本地计算机上 Administrators 组的成员或者必须被委派了相应的权限,才能执行下列步骤。作为安全性的最佳操作,请使用不属于 Administrators 组的帐户登录计算机,然后使用运行方式命令以管理员身份运行 IIS 管理器。在命令提示符下,键入 runas /user:administrative_accountname "mmc %systemroot%\system32\inetsrv\iis.msc"

使用 IIS 管理器创建虚拟目录

  1. 在 IIS 管理器中,展开本地计算机,展开“FTP 站点”文件夹,展开要添加虚拟目录的 FTP 站点,右键单击要创建虚拟目录的站点或文件夹,指向“新建”,然后单击“虚拟目录”。
  2. 单击“下一步”。
  3. 在“别名”框中,键入虚拟目录的名称,然后单击“下一步”。这是用户键入的名称,应该简短且易于键入。
  4. 在“路径”框中,键入或浏览到虚拟目录所在的物理目录,然后单击“下一步”。
  5. 在“允许下列权限”下面,选中所需访问权限旁边的复选框,然后单击“下一步”。
  6. 单击“完成”。虚拟目录在当前选定的文件夹级别下创建。

使用 iisftpdr.vbs 管理脚本创建虚拟目录

  1. 从“开始”菜单,单击“运行”。
  2. 在“打开”框中,键入 cmd,然后单击“确定”。
  3. 在命令提示符下,键入 cscript iisftpdr.vbs /create "SampleFTPSite" VirtualDirectoryName x:\path,并按 Enter。根据情况替换 FTP 站点名称、虚拟路径名称和物理目录的路径。

注意 注意 删除虚拟目录操作不会删除相应的物理目录或文件。

使用 IIS 管理器删除虚拟目录

以下方法不适用于根虚拟目录。

使用 iisftpdr.vbs 管理脚本删除虚拟目录

  1. 从“开始”菜单,单击“运行”。
  2. 在“打开”框中,键入 cmd,单击“确定”。
  3. 在命令提示符下,输入 cscript iisftpdr.vbs /delete "SampleFTPSite" VirtualDirectoryName,并按 Enter。根据情况替换 FTP 站点名称和虚拟目录名称。
相关主题

© 1997-2003 Microsoft Corporation。保留所有权利