How to use cache virtual directories other than /NR/ in Microsoft Content Management Server 2001

When the virtual directory for Microsoft Content Management Server (MCMS) 2001 cache directories is set to /NR/, you cannot change to another virtual directory. You may want to change the virtual directory in a Web farm scenario because each major channel in the navigation hierarchy may be hosted on a different server. The following is an example of a navigation hierarchy:

 * /Channels/
 * * */Wireless/
 * * */Broadband/
 * * */DSL/
Each channel is hosted on a different server. When you are trying to locate a site, you are redirected to the correct server, depending on what channel that you are trying to locate.

When you use cache directories, the Load Balancer cannot determine the server that the original request came from. This problem occurs because all the Web servers have /NR/ specified. Resource URLs always appear similar to the following example across all servers:


The virtual directory paths are hardcoded in the database. There is no known API or public API that lets you to change these paths.

Information about the location of the virtual directory path is stored in the MCMS database. The NodeProperty table contains this information. The location of the virtual directory path is stored in the "PropName" column. It has the VirtualExecPrefix and VirtualReadPrefix values. These values have the directories set to /NR/exeres/ and to /NR/rdonlyres/, respectively

The VirtualPathConfig.exe utility has been created to help you change the default virtual directory path in the database so that each server has a unique URL.

You can set the wireless channel to have the following default virtual directory path:
You can set the broadband channel to have the following default virtual directory path:

Known issues

? The modified URLs that are generated when you run the VirtualPathConfig.exe utility are supported only in Published mode. Authoring or any other design-time activity is not supported on the live site.
? The VirtualPathConfig.exe utility does not enforce valid virtual directory names. You must enter valid values for the virtual directory name.
? You cannot remove the Microsoft Internet Information Services (IIS) virtual directory that is named NR.

Installation instructions

? You must make sure that the Microsoft Visual Basic 6.0 runtime is installed on the destination computer. The VirtualPathConfig.exe utility requires the Visual Basic 6.0 runtime.
? You can copy the VirtualPathConfig.exe utility to any location on your MCMS server computer.

Configure MCMS to use alternate virtual directories
1. Run the VirtualPathConfig.exe utility.
2. In the VirtualPathConfig.exe utility, change the settings from /NR/exeres/ and /NR/rdonlyres to the new values that your application must use. For example, the new values may be /DSL/exeres/ and /DSL/rdonlyres. These settings apply to all computers that share the MCMS database.
3. Modify the following file:
Installation Folder\Server\IIS_NR\System\WBC\Internals\Shared\C
By default, the value is Const IDS_FRAMEWORK_VIRTUAL_PATH = "/NR/System/WBC". The new value must be the same value that you used to replace NR in step 2.

The valid setting for the example that is used in step 2 is Const IDS_FRAMEWORK_VIRTUAL_PATH = "/DSL/System/WBC".
4. Create a new virtual directory in IIS that has the same name that you specified in step 2, and then map the new virtual directory to the path Installation Folder\Server\IIS_NR. To do this, follow these steps:a. On the desktop, right-click My Computer, and then click Manage.
b. Expand Services and Applications, expand Internet Information Services, and then expand Web Site.
c. Right-click Default Web Site, click New, and then click Virtual Directory.
d. Follow the instructions in the Virtual Directory Creation Wizard. Use the following information in the Virtual Directory Creation Wizard:
Alias - This is the new name that the utility used in step 2. In this example, the new name is DSL.

Directory - The directory has the following path:
Installation Folder\Server\IIS_NR

? Microsoft Content Management Server 2001 Service Pack 1