Site Server Express - Setting Up Posting Acceptor

Things to know before installing Posting Acceptor

The following information lists the things you should know before installing Posting Acceptor, as well as procedures to follow as you install and configure Posting Acceptor. Before installing Posting Acceptor, note the minimum hardware and software requirements for the platforms that Posting Acceptor supports.

Hardware and Software Minimum Requirements

Posting Acceptor runs on the following platforms using either the Intel x86 or DEC Alpha processor. To successfully install Posting Acceptor, ensure the following minimum requirements are met.

* Active Server Pages (ASP) is not required, but will allow for automatic routing of the posting client to the proper page for a particular client tool. Microsoft IIS and PWS 3.0 provide ASP in their respective installations.

Installing Posting Acceptor

During Posting Acceptor installation, the ISAPI, mapping modules, sample forms, and PostInfo file are deposited by default into the correct virtual directories. You are required to insert the meta-tag into your default home page. As you install Posting Acceptor, you may accept the default directory locations for component installation or specify other directory locations.

To install Posting Acceptor:
  1. From the root directory, double-click the PostAcc folder. Double-click Posting Acceptor.exe and accept the license agreement. 

  2. In the dialog box, enter the physical path to the virtual root of your Web server. You may select the default, or choose another path. Click OK. If you select another directory, you must edit all Active Server Pages (.asp) files and adjust the paths accordingly.

  3. In the dialog box, enter the directory where you want to install Posting Acceptor. This must be a virtual root of your Web server that has execute permissions. You may select the default, or choose another path. Click OK. If you select another directory, you must edit all .asp files and adjust the paths accordingly. 

  4. Click OK to finalize Posting Acceptor installation. Reboot if necessary.

  5. Run your editor on your default home page. Insert the meta-tag found in the postinfo.eg file into your default home page. Inside the meta-tag, modify the path to your PostInfo file to suit your needs.

    Note It is not required that you add meta-tag information to any virtual root directory other than the default home page of your Web server. Setup automatically adds that line for you. You are required to edit the line to point to your PostInfo file if you do not use the Posting Acceptor default. (/scripts/default.asp) 

Configuring Posting Acceptor

An unlimited number of configurations are possible when setting up Posting Acceptor. You have the option of either selecting the Posting Acceptor defaults or editing the configuration information to fit your needs.

Elective configurations include selecting the TargetURL and PostingURL to which users post, editing the Posting Acceptor sample pages, creating mapping modules, using Posting Acceptor with Microsoft Content Replication System (CRS), configuring for outstanding posts, and performing additional processing after a post is received.

Selecting TargetURL and PostingURL

Depending on the content provider's choice of client browser, you will modify different Active Server Pages (.asp) files to specify your TargetURL and PostingURL. For more information about interacting with content providers, see "What to Tell Content Providers" in the Posting Acceptor Administration section of this document.

To select the TargetURL and PostingURL for WebPost API clients: 

  • Modify the postinfo.asp file.

To select the TargetURL and PostingURL for Netscape Navigator and other HTTP clients: 

  • Modify the uploadN.asp file. 
Configuring with Sample Pages

To quickly get you up and running with Posting Acceptor, two sample pages are provided in the product. One sample page, UploadX.asp, maps to users posting content with the WebPost API, and the other sample page, uploadN.asp, maps to users posting content with Netscape Navigator and other HTTP client browsers. For more information about sample pages, see the section "Posting Acceptor Components" in this document.

To configure Posting Acceptor using the WebPost API and Netscape Navigator/HTTP sample pages: 

  • You may use both sample pages (uploadX.asp and uploadN.asp) as they currently exist in Posting Acceptor, or edit each sample page source file to suit your needs. With the HTTP sample page, you can also copy its forms directly into your existing Web pages. 
Creating Mapping Modules

The mapping module is a self-registering server that creates the appropriate entry in the Posting Acceptor's mapping modules registry during registration. You have the option to accept the default mapping module or create other modules to suit your needs. For more information about mapping modules, see "Mapping Modules" in the "Background Functions" section of this document.

A mapping module must be an in-process server that supports the IMapper interface defined as follows:

const IID IID_IMapper = \ 
{0x66BE7351,0x83A0,0x11D0,{0xA3,0x17,0x00,0xC0,0x4F,0xD7,0xCF,0xC5}}; 
This interface supports one additional method besides the standard ones: 
HRESULT STDMETHODCALLTYPE GetLocation( 
/* in */ LPCTSTR szUrl, // Destination URL ("TargetURL"variable) 
/* in */ LPCTSTR szUsername, // User uploading files 
/* out */ LPSTR szDestination, // Physical disk location buffer 
/* in */ DWORD dwDestinationLength); // Length of the buffer

(For the acceptor, the length of the buffer will always be MAX_PATH.)

Note You can enable or disable a mapping module by setting its value in the registry to 1 (enable) or 0 (disable).

Using Posting Acceptor with Microsoft Content Replication System

A mapping module for Content Replication System (CRS) is installed automatically when you install Posting Acceptor. If you have CRS installed on your system, you can use it to replicate content posted to your server or to other servers.

To use Posting Acceptor with CRS

  • Set up an automatic project with a MapURL pointing to the content directory of your project. With the TargetURL being a superset of the MapURL, posted content is saved in the content directory via the CRS mapping module.

For example, if the TargetURL were https://server/content/html, the MapURL would be https://server/content.

For more information on setting up automatic projects, see the CRS Operations Guide.

Example Scenario Using CRS with Posting Acceptor

The following information is a detailed example of how to use CRS with Posting Acceptor.

In the example, the Internet service provider (ISP) wants users to post files to an intermediate machine instead of posting directly to the live WWW servers. The ISP has a posted file dropped into a directory that is running an Automatic Mode CRS project. User posts are then replicated to the end WWW servers.

The intermediate system is called stage01.mynet.com and the WWW server is called www.mynet.com. All systems are running Windows NT Server 4.0 and IIS 3.0.

On www.mynet.com, the ISP has configured the following IIS virtual directory:

/users maps to: d:\inetpub\users

On stage01.mynet.com, the content directory for dropping of files is e:\uploads.

User accounts on stage01.mynet.com must be in the CRS Users group.

CRS Setup

On stage01.mynet.com, create the following project:

crs addproj stage e:\uploads www.mynet.com /automatic /fastmode /mapurl https://www.mynet.com

On www.mynet.com, create the following project entry:

crs addproj stage d:\inetpub\wwwroot\users

On stage01.mynet.com, start the crs project.

crs startrep stage

Posting Acceptor Setup

This example assumes that the posting acceptor sample has been installed on the system.

On www.mynet.com, add the following line to the default page of root.

<META name="postinfo" content https://stage01.mynet.com/scripts/postinfo.asp\>

On stage01.mynet.com, create a postinfo.asp file with this content:

<% Response.Buffer = True %> 

Version=1.5 

[WebPost.PostWPP] 

PostingURL="https://<%= Request.ServerVariables("SERVER_NAME") %>/scripts/cpshost.dll?PUBLISH" 

BaseURL="https://<%= Request.ServerVariables("SERVER_NAME") %>/users/<%= Request.ServerVariables("LOGON_USER") %>"

Note Stage01.mynet.com, turns off anonymous access so that the postinfo.asp file can determine LOGON_USER.

Configuring for Outstanding Posts

To keep the system from being overwhelmed by excessive amounts of content posts, for example, the results from a denial of service attack, Posting Acceptor has implemented limitations on two posting values. The limitations are placed on the total number of outstanding posts and on the maximum post duration, both of which are adjustable in the registry. For more information, see "RegKey," in the "Posting Acceptor Administration" section of this document:

  • MaximumOpenTransactions. This value controls maximum outstanding posts. (Default is 200 posts.)

  • OpenTransactionsTimeout. This value controls maximum outstanding post duration. (Default is 600 seconds or five minutes.)

To configure for outstanding posts:

In a registry editor, open up the registry key, HKLM\Software\Microsoft\WebPost\Acceptors\CPSHost. Adjust the value limitations to suit your needs.

Specifying a Post-Processing URL

If you want to perform additional configuring after a post is received, Posting Acceptor is able to call a secondary or "post-processing" URL with all the form data except that of the posted files uploaded from the client. In place of the content is a list of locations and sizes of the files posted to the server. You are able to edit the PostInfo file if you wish to specify a post-processing URL. For more information about the PostInfo file, see "PostInfo File," in the "Background Functions" section of this document.

To specify a post-processing URL for WebPost API clients:

  • Modify the PostInfo file for WebPost.

To specify a post-processing URL for Netscape Navigator and other HTTP clients: 

  • Modify the HTTP sample page (uploadN.asp) that contains the file upload form information.