Installing Port80 Software Products

Most of our products work by having at least one component that intercepts and optionally modifies HTTP requests and/or responses inside the process space of your IIS Web servers. This is the most efficient way to accomplish the kind of jobs our software is designed to do. But is also means that our products need to integrate with services that are critical to your Web infrastructure.

For this reason, we strongly recommend taking the following precautions when deploying our software, especially in production environments, so as to maximize the chances of a smooth and successful installation. (As always, Port80 Software Support is also here to help, should you require hands-on assistance.)


Steps to a Successful Installation

  1. Get the latest code. Check the download page to make sure you have the latest version. (If you're not sure which version you have installed, you can find it in the Settings Manager, under Help/About.)
  2. Check the system requirements. Different products may have different system requirements. Always check the product-specific requirements to verify that your hardware and Windows Server version are supported by the product you are about to install, and that you have all required Microsoft runtimes installed as well.
  3. Verify permissions. Make sure your user account has full Administrator privileges before installing. Our software also assumes that you have not modified the default permissions for IIS-related user and groups such as IUSR_, IWAM_, IIS_WPG, and IIS_IUSRS.
  4. Verify uninstall of prior versions.If there is any chance that another version of the product was previously installed on the target machine, verify that its major components have been successfully uninstalled before proceeding. See Checking Product Components (below) for product-specific details.
  5. Close the IIS Manager. Certain Port80 products install supplementary components for IIS Manager on certain versions of Windows Server. To make sure any such components will be immediately available after install, close the IIS Manager before proceeding.
  6. Stop IIS. Although the product's installer will attempt to shut down any running IIS worker processes during install, we recommended that you stop these manually before launching the installer. For best results, stop the World Wide Web Publishing Service (W3SVC). It should restart automatically during the course of the installation.
  7. Verify the installation. After installing the software, ensure that the major components were installed successfully. See Checking Product Components (below) for product-specific details.

Checking Product Components

When verifying that one of our products was installed (or uninstalled) correctly, the main issue is usually whether the ISAPI DLL mapping was successfully added to, or removed from, IIS. The procedure for determining this differs slightly, depending on the product:

  • For CacheRight, httpZip, LinkDeny, and ServerMask: The principal component of each of these products is an ISAPI Filter DLL which is installed in IIS at the global or service level. To verify if this component has been successfully installed (or uninstalled), do the following:
    1. Open IIS Manager and select the appropriate node in the tree view control in the left pane. In Server 2003 this is the Web Sites folder; in Server 2008 it is the node labeled with the Machine Name.
    2. If using Server 2003, right-click the node to bring up its Properties sheet, then select the ISAPI Filters tab. If using Server 2008, simply double-click the ISAPI Filters icon in the Features View tab of the center pane.
    3. In both cases, an entry with your Port80 Software product's name should be visible in the ISAPI Filters list, following a successful installation, and no longer listed there, following a successful uninstallation.
  • For ServerDefender VP: The installed ISAPI DLL (ServerDefenderVP.dll) serves as both an ISAPI Filter and an ISAPI Wildcard Extension. To check that this DLL is correctly mapped in IIS:
    1. Open IIS Manager and select the appropriate node in the tree view control in the left pane. In Server 2003 this is the Web Sites folder; in Server 2008 it is the node labeled with the Machine Name.
    2. If using Server 2003, right-click the node to bring up its Properties sheet, then select the ISAPI Filters tab. If using Server 2008, simply double-click the ISAPI Filters icon in the Features View tab of the center pane.
    3. In both cases, an entry for ServerDefender VP should be visible in the ISAPI Filters list, following a successful installation, and no longer listed there, following a successful uninstallation.
    4. To check the Wildcard Extension mapping in Server 2003:
      1. Open the Properties sheet for an individual Web site in the IIS Manager
      2. Go to the Home Directory tab and click the Configuration... button to launch the Application Configuration dialog.
      3. When the product has been successfully installed, the entry for ServerDefender VP should appear in the list of "Wildcard application maps" on the lower half of the Mappings tab. (And a successful uninstall should have removed this entry.)
      4. Repeat these steps for each Web site in turn.
    5. To check the Wildcard Extension mapping in Server 2008:
      1. In IIS Manager, select the node for an individual Web site from the tree view control.
      2. Double-click the Handler Mappings icon in the Features View tab of the center pane.
      3. An entry for ServerDefender VP should be visible in the list, following a successful installation, and no longer listed there, following a successful uninstallation.
      4. Repeat these steps for each Web site in turn.
  • For ZipEnable: The procedure for ZipEnable is identical to that of ServerDefender AI except that, in the case of ZipEnable, the ISAPI Wildcard Extension is not installed until and unless one of the two features that requires it has been enabled. These two features are the Browser Compatibility Checking and the CPU Roll-off. If neither feature has been enabled, then you should not expect to see the ISAPI Extension listed in IIS.

Troubleshooting Steps

If any problems are encountered during or immediately after installation, please take the following steps to gather information that will help Port80's Support team to identify and fix the problem as quickly as possible:

  1. Note Event Log errors. Make note of any warning (yellow) or error (red) messages that have appeared in the Windows Event Viewer (in either the Application or System logs) since the first attempted installation of the Port80 product. In particular, note any messages that mention an ISAPI DLL or module, or any element of IIS (e.g., Worker Processes, Application Pools, inetinfo.exe, w3wp.exe, W3SVC, IISADMIN).
  2. Gather debug files. If there are any files in the /Debug directory within the product's installation directory, copy off and save these files before uninstalling, if possible. They may be needed for diagnostic purposes.
  3. Stop IIS and uninstall. Manually stop all IIS services, including the IIS Administration Service (IISADMIN) and all of its dependencies, and then uninstall the software using the uninstall shortcut in the Port80 program group in the Windows Start menu. Alternatively, you can use the uninstall shortcut in Add/Remove Programs (for Server 2003) or in Programs and Features (for Server 2008).
  4. Verify uninstallation. Verify that the uninstallation was successful and manually remove any major components that were left behind. See Checking Product Components (above) for product-specific details.
  5. Try reinstalling. I you wish, you can reattempt the installation once, being sure to use all of the precautions listed at the top of this page. This might be worth doing if you did not follow those same precautions during the first installation.
  6. Submit a support request. If your second installation attempt also fails (or if you followed all installation precautions in your first attempt) please submit a technical support request. Be as detailed as possible in your description of both your IIS environment (e.g. non-default IIS configuration settings, server-side programming environments, third-party ISAPI filters or extensions, reverse proxies, etc.) and of the incident itself (in particular the steps that had been taken when the issue occurred, and/or the steps required to reproduce it). Also be sure to mention that you have already gone through the steps outlined above.