Virtual Directories Not Visible on FTP Clients

We strongly recommend that all users upgrade to Microsoft Internet Information Services (IIS) version 7.0 running on Microsoft Windows Server 2008. IIS 7.0 significantly increases Web infrastructure security. For more information about IIS security-related topics, visit the following Microsoft Web site:For more information about IIS 7.0, visit the following Microsoft Web site:


When you use your FTP client, you are unable to see virtual directories created in Internet Server Manager for the FTP service even though you have permissions to access the directory.

However, if you issue the "cd" command with the correct name to the virtual directory or "ls" or "dir" of the virtual directory, the contents are listed (provided sufficient permissions exist for the user/anonymous user).


This behavior is by design. The ability to hide these directories is a security option in the FTP server configuration.


A work around is to create a physical directory with the same name in the location of the virtual directory so the FTP client can see the name.

/ --> c:\inetpub\ftproot
/sample --> d:\ftpvdir

If you create the directory c:\inetpub\ftproot\sample, the FTP client will see that directory in directory listings. The FTP client will only be able to see/retrieve files located in d:\ftpvdir. If any files are placed in c:\inetpub\ftproot\sample, the FTP client will not see them or be able to retrieve them.

You can also create a virtual directory for the FTP service from the Directories tab in the FTP Service Properties by choosing Add. Select the directory and type in an alias. The virtual directory alias is used to change to the directory.

The way you change to the directory varies slightly depending on if you use a web browser or standard FTP client to access the FTP server.

From a WWW Browser

Include the virtual directory name in the URL:


From a Standard FTP Client

Even though the directories can not be seen, you can explicitly "cd" to the virtual directory name. For example:

cd /mydirectory

The forward slash is necessary, otherwise "cd" tries to change directory from within the current directory the client is in.