The Virtual Directory System
The virtual directory system allows the administrator to attach any directory or drive to a user account’s root folder. A virtual directory (VD) consists of a file path, a name or alias, and a set of access permissions associated with that file path.
A virtual directory is a directory that appears to client browsers as though it's within the user's root directory. A virtual directory has an alias or name that is mapped to a local file path or Universal Naming Convention (UNC) share location. A client appends the alias to the root of the site to browse the content in that virtual directory. The following table illustrates these mappings:
|Physical location||Name or Alias||Client path|
When a client requests the root directory from the server, the VDs you've assigned to that user are sent to the client. Each virtual directory you've added to the user account appears as a subdirectory (using the name or alias you assigned to the VD as the directory name) directly under the user's root directory.
Security settings can be specified for each virtual directory, and all subdirectories under that VD inherit the same security settings.
There are 2 modes that a user account can operate in with respect to the virtual file system. The two modes are simple and standard modes.
Simple Virtual Directory mode
When a user account uses simple directory mode, the administrator can only assign one directory to represent the virtual directory for that user. Instead of that directory being seen as a subdirectory off of the root, the virtual directory selected will be the directory the user is placed in when they first log into the server. In other words, the directory selected as the virtual root directory will be the root directory. A user account is placed in simple directory mode by selecting the Is Simple Directory checkbox.
Standard Virtual Directory mode
In standard mode (the Is Simple Directory option is unchecked), the administrator may attach as many directories to a user account as desired. The directories selected will appear as subdirectories off of the root directory when the designated user logs into the server.
A Virtual Directory Mode Example
Let’s take a user with one virtual directory called ftproot that maps to C:\ftproot.
In Simple Directory mode, the remote root directory that the user sees, “/“, is mapped directly to C:\ftproot on the server. The actual virtual directory name is ignored (you can think of it as always being named “/“). The user will see all files and folders in C:\ftproot listed in their root directory. They can upload and download files directly into the root directory and they will be uploaded or downloaded to C:\ftproot on the server.
When not in simple directory mode, the root directory “/” doesn’t map to anything. Instead, the root directory “/” becomes a virtual file system that you can attach sub-directories to. When not in simple directory mode, you can add as many virtual directories to a user account as you like, and the virtual directory name will become a sub-directory in the virtual root. However, you have to change to that subdirectory before you can upload or download anything. If you try to upload a file to the root folder “/“, then the operation is invalid because the path “/” doesn’t map directly to a folder on the server. You would need to specify the path /ftproot to upload or download files from the virtual directory ftproot.
Variables that can appear in Virtual Directory Names and Paths
The special variable %USER% can be present in a virtual directory name or path. When present, the %USER% variable is replaced by the user’s username during login.