29 April 2008

Configuring .NET ASPX File Virtualization for TeamSite

The following configurations are necessary to successfully virtualize content from aspx files on a TeamSite Server where the .NET Framework is also installed on the same server.

Prerequisite

  • Add the ASPNET user to the "TeamSite Web Preview" Group.
  • Ensure that .NET framework version 2 is already installed in the same server box that runs TeamSite.
Details

If you are using Windows 2003 the following must also be done (until Bug 57146 has been fixed):
  1. If IIS was installed before you installed TeamSite then you need to delete the default website. Rename the current default website (e.g. “default website bkup”) and click the “Stop” button for the backup default website to stop IIS from running. Then create a new one (also name it “Default Web Site”), using port 81, set path to c:\inetpub\wwwroot and configure it for anonymous access using the IIS IUSR_ user. Click the “Start” button on the new created default website.
  2. Go to Default Web Site properties->ASP.NET tab and check the the .NET version. If there are two version of the .NET framework in the selected drop down box, select version 2.0.xxxx
  3. Go to Default Web Site and Add the SSI ISAPI filter as follows
  4. Right click Default Web Site > Properties > ISAPI Filters > Add, give a filter name like "iwrewrite" and point to \lib\iwproxy_isapi.dll
  5. Within the IIS Management console, under “default website” create a new virtual directory called "iw-mount" which points to the Y:\ drive directory. Anonymous access to this directory should be the TSIMP_ user.
  6. For the root directory (iw-mount), click the “Configuration” button and check the configuration of the defined application to ensure that at least the extensions ".aspx" points to the version 2 .NET framework of aspnet_isapi.dll. Further extensions pointing to this are asax, ascx, ashx, asmx & axd.
  7. Check in the Web Service Extensions that Active Server Pages and ASP.NET are enabled.
  8. Do step A to C **
  9. Set full permission to everyone on the C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\Temporary ASP.NET Files folder
  10. Restart IIS and run “iwreset –a”
  11. You should now be able to run a simple ASPX. (just take a simple HTML page and rename it .asp/.aspx.
  12. Log into TeamSite and view a ASPX page.
  13. If you receive and error like "Access denied to 'Y:\default\main\WORKAREA\test, Failed to start monitoring file changes" then you need to check that all necessary parts of ASP.Net have the correct permissions as per Microsoft Knowledgebase articles 317955 & 316721. Interwoven KB article 53298 may also help to identify the problem.
  14. If all the steps are successful, then delete the old default web site that was renamed in step 1 (optional).
    The "C:\Inetpub\wwwroot\aspnet_client" directory contains JavaScript files used by .NET, and is automatically installed with the framework.

To enable the virtual system to locate this directory you may need to add a virtual directory at the root of the Workarea:

  • From within the IIS console, navigate to the Workarea (i.e. "\iw-mount")
  • Right-click on the Workarea; Select New > Virtual DirectoryEnter "aspnet_client" as the Alias
  • Enter "C:\Inetpub\wwwroot\aspnet_client" for the Directory
  • Use the default permissions

* *Ref:

A. From within the IIS console, navigate to the Workarea (e.g. "\iw-mount\default\main\uam\WORKAREA\load")

B. Right-click on the Workarea and click on "Properties", Under "Application Settings" click on "Create" button.

C. Restart IIS.

Further reading:

See knowledge article # 49749

1 comment:

Anonymous said...

This is a nice post that applied to pre TeamSite 6.7 versions. However, since the addition of SitePublisher and LiveSite, the paradigm has shifted away from virtualization using this model.