Servertec Internet Server Version 1.12.1 09/04/2005

-----------------------------------------------------------------------------
CONTENT

    Introduction

    Release Notes
    Requirements
    Installation
    How To

    Contact Us

-----------------------------------------------------------------------------
INTRODUCTION

Servertec Internet Server is a small, fast, affordable, scalable and easy to
administer platform independent Application/Web Server written entirely in
JavaTM.

It is the perfect Web Server for serving static Web pages and a powerful
Application Server for generating dynamic, data driven Web pages using Java
Servlets, Java Server Pages (JSP), iScript, Common Gateway Interface (CGI)
and Server Side Includes (SSI). It is also a feature rich Servlet Engine
able to provide Servlet capabilities to any Application/Web Server supporting
Apache Modules, AOL Server Modules, ISAPI, NSAPI, CGI or Java.

Servertec Internet Server provides a rich environment for building and
deploying cross platform Web-based business critical Internet and Intranet
applications. It also is a robust, scalable platform that individuals,
workgroups and corporations can use to establish a Web presence.

Servertec Internet Server features include:

Feature         Description
==============  =============================================================
Platform        Servertec Internet Server is written in Java and will run on 
Independent     any platform that supports Java version 1.1.x or later.

Open Standards  Servertec Internet Server supports open standards such as 
                Java, Servlets, HTTP, SSL, JSP, JNDI, CGI, SSI, HTML, TCP/IP,
                RMI, IIOP, CORBA, JDBC and XML.

High            Servertec Internet Server is built around a high performance 
Performance     multi-threaded Web engine that supports Hypertext Transfer 
Web Engine      Protocol (HTTP) version 1.1.

IPv6 Support    Servertec Internet Server supports IPv6 on systems where the
                Java implementation and the underlying platform and network 
				support IPv6.

Full-featured   Servertec Internet Server supports Java Servlet API version 
Servlet         2.2.
Container
                Servertec Internet Server can also be used as the Servlet
                Engine for any Application/Web Server supporting Apache
                Modules, AOL Server Modules, NSAPI, ISAPI, CGI or Java.

                Gateways exist for Apache Web Server, AOL Server, Microsoft
                Internet Information Services (IIS), Microsoft Personal Web
                Server (PWS), Netscape FastTrack Server and Netscape
                Enterprise Server.

Expandable      Servertec Internet Server can be easily expanded using 
Architecture    Servlets, JSP, CGI and iScript.

                Servlets and JSP can access TCP/IP, RMI, IIOP, JNDI, CORBA,
                JDBC and XML to create highly scalable n-tier enterprise
                solutions.

Scalable        The Enterprise Edition's clustering and distributed session 
Solution        technologies provide a robust, fault-resistant, scalable
                solution where a group of servers can seamlessly work
                together to meet the needs of a large number of clients.

                Servertec Internet Server leverages Java's multiprocessor
                support to increase the number of users and requests that a
                single server can service.

Fault Tolerant  Servertec Internet Server provides a robust environment for
                serving Web pages and for running server side Internet
                applications. Servertec Internet Server's crash protection
                and recovery technology automatically traps, recovers from
                and logs exceptions. Additionally Servertec Internet Server
                protects the integrity of the server environment by
                preventing exceptions occurring in one request handler from
                affecting other requests that the server is processing.

                The Enterprise Edition integrated failover clustering and
                distributed session support where a group of servers are used
                to ensure that even if some of the servers fail, that others
                take over and make sure that the site continues to be
                available for client requests. This provides customers with a
                reliable means of ensuring that the site stays up in the
                event of a hardware or software failure.

Multi-Threaded  Servertec Internet Server simultaneously services multiple
                client requests, logs access/errors/events and manages
                sessions and connection pools using a pool of worker threads.

Object          Using Servertec Internet Server developers create object 
Oriented        oriented reusable modules, Servlets, that encapsulate 
                business logic and that are used to generate dynamic content
                and to automate tasks.

n-Tier          Servertec Internet Server is an integral part of client/
Solution        server computing, where a Web Browser is responsible for the 
                presentation, a Web Server for creation and delivery of 
                content, an Application Server for the business logic and a 
                Database Server for storage and retrieval of information.

Tiny Footprint  Unlike other Web and Application Server that require
                considerable resources, Servertec Internet Server uses less 
                than 256K of disk space for the base package and under 512K
                for the works.

Data Access     Using Servertec Internet Server developers can use JDBC and
                Servertec Persistent Object Store to create data-driven
                Web-based applications that have access to a variety of data
                sources.
                
Keep-Alive /    Servertec Internet Server keeps connections alive across 
Persistent      multiple requests reducing the overhead associated with 
Connections     re-establishing a connection.

                Servertec Internet Server's keep-alive implementation is
                resistant to denial of service attacks. It allows clients to
                remain connected to the server for a specified amount of time
                and number of requests.

Request         Servertec Internet Server boosts client performance by 
Pipelining      allowing clients to send multiple requests to the server
                without blocking.

Virtual Hosts   Servertec Internet Server can be configured to support 
                multiple domains or Web sites mapped to the same server 
                each with their own content space.

Secure Socket   Servertec Internet Server supports Secure Socket Layer (SSL)
Layer (SSL)     versions 2 and 3, Transport Layer Security (TLS) version 1.0,
                DSA and RSA keys, Hash Message Authentication Code (HMAC) MD5
                and SHA-1 and RSA, RC4, DES, Triple DES, Diffie-Hellman and
                DSA Cryptographic Suites.

Multilingual    Servertec Internet Server can easily be configured to respond
Content         to client requests with content specific to a default
Negotiation     country, language, character set, content encoding and locale
                or to respond to client requests with content appropriate to
                the client request's content type, language, character and
                content encoding by varying the generic request URI and
                returning the content that best matches the client's request
                or the server's configured default.

Security        Servertec Internet Server protects resources and defines
Realms          users, groups, domains, computers, access rights, access
                control lists (ACL) by realm.

                Servertec Internet Server includes a file realm that can be
                used to access realm information in flat files, a database
                realm that works with any JDBC accessible database and a
                POS realm that uses Servertec Persistent Object Store.
    
                Using Servertec Internet Server's Open API developers can
                easily create custom realms.

Access Control  Servertec Internet Server protects resources from users,
                domains or computers using Web-based authentication.

                Servertec Internet Server supports the Basic authentication
                scheme with BASE64 encoding.

Administration  Servertec Internet Server supports Web-based and Command-line
                administration of a single server or a group of servers from
                anywhere on the network. Administrators can securely monitor
                and manage multiple servers remotely using any Web browser
                and can directly administer servers using simple commands
                that can be easily integrated into user scripts.

Web-based       Servertec Internet Server's Web-based Administrator can be 
Administrator   used to restart, stop and monitor one or more servers and to 
                manage server, socket, virtual hosts, workgroup, session,
                servlets, servlet contexts, aliases, mime types, locales,
                country codes, messages, connection pools, realms, resources,
                users, groups, computers, access rights, access control
                lists, logger, templates, keystore, certificates, file system
                and configuration archives.

Workgroup       The Administrator's Workgroup Monitor checks and displays the
Monitor /       status of servers defined in the Workgroup.
Event Handler
                The Workgroup Monitor can also be configured to call the
                specified console, flat file, database, email, POS or custom
                monitor event handler when servers defined in the workgroup
                are not accessible.

                The console monitor event handler displays events on the
                console's stdout. The flat file monitor event handler logs
                events to a specified file on the disk with daily, weekly,
                monthly or no rollover. The database monitor event handler
                writes monitor events on any JDBC accessible database.
                The POS handler uses Servertec Persistent Object Store and
                the email monitor event handler sends monitor events as an
                email to the specified email address.
    
                Additionally, using Servertec Internet Server's Open API
                developers can easily create custom monitor event handlers.

Keystore /      The Administrator can be used to change Keystore settings and
Certificate     to generate X.509 Self-Signed and Request certificates and to
Manager         display, export, import and remove certificates.

Configuration   Using the Administrator administrators can archive working
Archive         configurations and quickly recover from test configurations
                to archived configurations.

File System     Administrators can create directories, upload files and open,
Manager         copy, move, rename and delete file and directories on the
                server machine using the Administrator.

Servlet Load /  Developers and administrators can dynamically load and unload
Unload          Servlets without having to stop and restart the server.

Server Side     iScript makes it easy to deliver personalized customized
Scripting       content to users. Using iScript dynamic and data driven Web
                pages can be easily generated from templates.
    
                iScript's scripting language is similar to Visual Basic
                Script (VBScript). iScript's templates are similar to
                Microsoft's Active Server Pages (ASP), but are platform
                independent.

JavaServer      Servertec Internet Server includes support for JavaServer 
Pages (JSP)     Pages (JSP)  versions 0.9x, 1.0 and 1.1 using GNUJSP, Apache 
                Jakarta Tomcat Jasper, JavaServer Web Development Kit (JSWDK) 
                and SJSP add-on JSP engines.

Common Gateway  Servertec Internet Server fully supports Common Gateway 
Interface       Interface version 1.1.
(CGI)

Server Side     Servertec Internet Server includes built-in support for 
Includes (SSI)  Server Side Includes (SSI).

Servlet Tag     Servertec Internet Server supports template pages with 
                embedded <servlet></servlet> tags.

Session         Servertec Internet Server is able to maintain information 
Support         across multiple requests using Cookie or URL based user
                sessions.

                The server includes memory resistant, flat file and database
                based session stores. Additionally developers can create
                custom session stores using Servertec Internet Server's Open
                API.

                File and database session stores support distributed
                persistence and caching.

Database        Servertec Internet Server's built-in database connection 
Connection      pooling improves performance and reduces resource allocation.
Pools
                Connection pools can be dynamically created when the server
                starts or programmatically. Pooled connections are
                automatically closed when the server is shut down or when an
                unused connection times out.

File Cache      Servertec Internet Server's File Cache improves performance 
                by reducing disk IO. In does this by maintaining an optimized
                memory cache of recently accessed files.

Multi-Part      Servertec Internet Server's multi-part form technology allows
Forms / File    file uploads without impacting the server's memory footprint.
Uploads         The files being uploaded are written to disk as they are 
                received without first being loaded into memory.

Logger          Servertec Internet Server's logger generates detail logs of 
                server access, errors and events.

                Log entries can be sent to the console's stdout/stderr,
                written to a flat file on the disk, stored on any JDBC
                accessible database or in a Servertec Persistent Object
                Store. Log files can rollover daily, weekly, monthly or
                never.

                Using Servertec Internet Server's Open API developers can
                easily create custom loggers.

International-  Servertec has made it easy for developers to port Servertec
ization /       Internet Server to another language by simply following the
Localization    documentated steps for translating the text files and
                templates and for changing the configuration files that the
                server uses.

Access Log      Administrators can select from existing access log templates
Templates       or can easily create templates with the information that is
                to be logged.

Fully           Developers can easily reconfigure Servertec Internet Server
Configurable    by editing simple text files and html pages.
    
                All server, socket, session, keystore and logger parameters,
                virtual hosts, workgroup, servlets, servlet contexts,
                aliases, mime types, locales, country codes, messages,
                connection pools, realms, resources, users, groups,
                computers, access rights, access control lists, templates,
                certificates, configuration archives and html templates are
                fully configurable.

Open Java API   Servertec Internet Server exposes variables and methods that
                can be used to easily integrate the server into any
                third-party application.

                Servertec Internet Server can be easily accessed from Java or
                from any other programming or scripting language that
                interfaces with Java.

                The API includes interfaces and abstract classes that
                developers can use to create custom loggers, realms, session
                stores, IO handlers, socket handlers and monitor event
                handlers.

Examples        Servertec Internet Server distributions include numerous
                working examples with full source code demonstrating many of
                the key features.

Online          All documentation is available as HTML pages.
Documentation

Other           Servertec Internet Server supports other functionality found
                only in professional Application/Web Servers.

-----------------------------------------------------------------------------
RELEASE NOTES

Servertec is happy to announce the open source release of Servertec Internet
Server Version 1.12.1 09/04/2005.

You can help shape the development of Servertec Internet Server, send your
comments, suggestions and problems to support@servertec.com.

-----------------------------------------------------------------------------
REQUIREMENTS

Storage 
    3 MB for classes and executables 
    10 MB for classes, executables, examples and documentation

Java
    Java version 1.1.x or later

    Download Java from JavaSoft at:
    http://java.sun.com

Secure Socket Layer (SSL)
    Java Secure Socket Extension (JSSE) 1.0.1 or later

    Download JSSE from JavaSoft at:
    http://java.sun.com/products/jsse

Notes:
Java 1.4.x includes JSSE and does not require that JSSE be downloaded.

Secure Socket Layer (SSL) requires Java 1.2.0 or later.

The Keystore Administrator requires Java 1.2.0 or later.

The Certificate Administrator requires Java 1.3.0 or later.

-----------------------------------------------------------------------------
INSTALLATION - Servertec Internet Server

Use the following instructions to install the Servertec Internet Server on
Windows 9x/Me/NT/2000/2003/XP.

  1. Install Java version 1.1.x or later.

  2. Extract setup_iws.jar file.

     c:
     cd \
     jar -xvf <path>\setup_iws.jar

     <path>       the directory containing setup_iws.jar.

  3. Using <iws_path>\install\win32\vars.bat as a template, define the
     following environment variables in c:\autoexec.bat file.

     set JAVA_EXE = <java_path>\bin\java.exe
     set CLASSPATH = <iws_path>\classes;
        <iws_path>\classes\iws.jar;
        <iws_path>\classes\optional.jar;
        <iws_path>\classes\admin.jar;
        <iws_path>\classes\servlet.jar;
        <iws_path>\servlets;
        <iws_path>\samples\servlets;
        %CLASSPATH%
     set PATH = <iws_path>\bin\win32;%PATH%

     <iws_path>   the directory where the server was installed,
                  normally c:\iws.
     <java_path>  the base directory where Java was installed.

  4. Restart the computer.

Use the following instructions to install the Servertec Internet Server on
Linux/Solaris/Unix.

  1. Install Java version 1.1.x or later.
  
  2. Login on account where the server will be installed. 
  
  3. Extract setup_iws.jar file.

     cd /
     jar -xvf <path>/setup_iws.jar

     <path>       the directory containing setup_iws.jar.
  
  4. Make executables, as needed. 
  
     cd <iws_path>/bin/<platform>
     chmod u+x,g+x makeiws
     ./makeiws

     <iws_path>   the directory where the server was installed,
                  normally /iws.
     <platform>   the platform, linux, solaris/x86 or solaris/sparc.

  5. Using <iws_path>/install/<platform>/iws.sh as a template, define the
     following environment variables in the user's login script. 
  
     export JAVA_EXE = "<java_path>/bin/java" 
     export CLASSPATH = "<iws_path>/classes:
        <iws_path>/classes/iws.jar:
        <iws_path>/classes/optional.jar:
        <iws_path>/classes/admin.jar:
        <iws_path>/classes/servlet.jar: 
        <iws_path>/servlets: 
        <iws_path>/samples/servlets: 
        ${CLASSPATH}" 
     export PATH = "<iws_path>/bin/<platform>:${PATH}" 
     
     <iws_path>   the directory where the server was installed, 
                  normally /iws.  
     <java_path>  the base directory where Java was installed.  
     <platform>   the platform, linux, solaris/x86 or solaris/sparc.
  
  6. Logout and log back in. 

Use the following instructions to install the Servertec Internet Server on
Novell Netware.

  1. Install Novell's JVM for Netware version 1.1.7B or later.

  2. Extract setup_iws.jar file.

     SYS:
     cd \
     jar -xvf <path>\setup_iws.jar

     <path>       the directory containing setup_iws.jar.

  3. Add the following to SYS:\SYSTEM\autoexec.ncf file.

     SEARCH ADD <iws_path>\bin\netware

     <iws_path>   the directory where the server was installed,
                  normally SYS:\iws.

  4. Add the following entries to SYS:\etc\java.cfg file.

     CLASSPATH = <iws_path>\classes;$CLASSPATH
     CLASSPATH = <iws_path>\classes\iws.jar;$CLASSPATH
     CLASSPATH = <iws_path>\classes\optional.jar;$CLASSPATH
     CLASSPATH = <iws_path>\classes\admin.jar;$CLASSPATH
     CLASSPATH = <iws_path>\classes\servlet.jar;$CLASSPATH
     CLASSPATH = <iws_path>\servlets;$CLASSPATH
     CLASSPATH = <iws_path>\samples\servlets;$CLASSPATH

     <iws_path>   the directory where the server was installed,
                  normally SYS:\iws.

  5. Change <iws_dir>\config\logger.ini as following:

     ignore_exceptions = java.net.SocketException,
                         java.io.IOException,
                         java.io.InterruptedIOException

     <iws_path>   the directory where the server was installed,
                  normally SYS:\iws.

  6. Restart the Netware computer.

-----------------------------------------------------------------------------
INSTALLATION - AOL Server Gateway

Use the instructions below to configure the AOL Web Server or other 
Application/Web Servers running on Windows 9x/Me/NT/2000/2003/XP supporting 
AOL Server Modules to use Servertec Internet Server as their Servlet Engine. 

  1. Install and configure the Servertec Internet Server.

  2. Install and configure AOL Web Server or other Application/Web 
     Server that supports AOL Server Modules.

  3. Add the following section to the nsd.tcl file before the 
     ns_section "ns/server/${servername}/modules" section.

     ns_section "ns/server/${servername}/module/aolServerGateway"
     ns_param debug <debug>
     ns_param alias <alias>
     ns_param method "<method>"
     ns_param server "<host_name>:<port>"
     ns_param interval <interval>
     ns_param retry <retry>

     <alias>      the URI used to access the AOL Server Gateway, 
                  normally /servlet.  
     <debug>      whether to make a dump of the request/response to 
                  \temp\aolServerGateway.log [ true | false ], 
                  normally false.
     <host_name>  the name of the computer running Servertec Internet Server.
                  localhost can be used if both servers are running on the
                  same computer.
     <interval>   the number of milliseconds to wait before attempting to
                  retry a workgroup server that is down, a value greater than
                  or equal to 50 ms, normally 1000 ms.
     <port>       is the port number Servertec Internet Server is listening
                  on, normally port 8080.

                  AOL Server normally is set to port 8080 which conflicts
                  with Servertec Internet Server default port settings.
     <retry>      the number of workgroup server to try to connect to,
                  normally the number of servers defined.

  4. Add the following line to the nsd.tcl file int the
     ns_section "ns/server/${servername}/modules" section.

     ns_param aolServerGateway <mod_path>

     <mod_path>   the path to the AOL Server Gateway,
                  normally c:\\iws\\bin\\win32\\aolServerGateway.dll.

     Notes:
     A separate Server parameter must be entered for each workgroup server.

     A separate ns_param <method> parameter must be entered for each method.

     Example:

     #
     # Servertec AOLServer Gateway
     ns_section "ns/server/${servername}/module/aolServerGateway"

     ns_param debug false

     ns_param alias "/images"
     ns_param method "GET"
     ns_param method "POST"
     ns_param method "HEAD"
     ns_param server "p6:8080"
     ns_param server "p6:8080"
     ns_param retry 2
     ns_param interval 1000
  
     ns_param alias "/files"
     ns_param method "GET"
     ns_param method "POST"
     ns_param method "HEAD"
     ns_param server "p6:8080"
     ns_param server "p7:8080"
     ns_param retry 2
     ns_param interval 1000
  
     ns_param alias "/cgi-bin"
     ns_param method "GET"
     ns_param method "POST"
     ns_param method "HEAD"
     ns_param server "p5:8080"
     ns_param retry 1
     ns_param interval 1000
  
     ns_param alias "/"
     ns_param method "GET"
     ns_param method "POST"
     ns_param method "HEAD"
     ns_param server "p1:8080"
     ns_param server "p2:8080"
     ns_param server "p3:8080"
     ns_param server "p4:8080"
     ns_param retry 4
     ns_param interval 1000
  
     #
     # Modules to load
     ns_section "ns/server/${servername}/modules"
     ns_param   nssock           ${bindir}/nssock.so
     ns_param   nslog            ${bindir}/nslog.so
     ns_param   nscgi            ${bindir}/nscgi.so
     ns_param   aolServerGateway c:\\iws\\bin\\win32\\aolServerGateway.dll

  5. Restart the AOL Web Server. 

Use the instructions below to configure the AOL Web Server or other 
Application/Web Servers running on Linux/Solaris/Unix supporting AOL Server
Modules to use Servertec Internet Server as their Servlet Engine. 

  1. Install and configure Servertec Internet Server.

  2. Install and configure AOL Web Server or other Application/Web 
     Server that supports AOL Server Modules.

  3. Add the following section to the nsd.tcl file before the 
     ns_section "ns/server/${servername}/modules" section.

     ns_section "ns/server/${servername}/module/aolServerGateway"
     ns_param debug <debug>
     ns_param alias <alias>
     ns_param method "<method>"
     ns_param server "<host_name>:<port>"
     ns_param interval <interval>
     ns_param retry <retry>

     <alias>      the URI used to access the AOL Server Gateway, 
                  normally /servlet.  
     <debug>      whether to make a dump of the request/response to 
                  /tmp/aolServerGateway.log [ true | false ], 
                  normally false.
     <host_name>  the name of the computer running Servertec Internet Server.
                  localhost can be used if both servers are running on the
                  same computer.
     <interval>   the number of milliseconds to wait before attempting to
                  retry a workgroup server that is down, a value greater than
                  or equal to 50 ms, normally 1000 ms.
     <port>       is the port number Servertec Internet Server is listening
                  on, normally port 8080.

                  AOL Server normally is set to port 8080 which conflicts
                  with Servertec Internet Server default port settings.
     <retry>      the number of workgroup server to try to connect to,
                  normally the number of servers defined.

  4. Add the following line to the nsd.tcl file int the
     ns_section "ns/server/${servername}/modules" section.

     ns_param aolServerGateway <mod_path>

     <mod_path>   the path to the AOL Server Gateway,
                  normally /iws/bin/<platform>/aolServerGateway.so.
     <platform>   the platform, linux, solaris/x86 or solaris/sparc.

     Notes:
     A separate Server parameter must be entered for each workgroup server.

     A separate ns_param <method> parameter must be entered for each method.

     Example:

     #
     # Servertec AOLServer Gateway
     ns_section "ns/server/${servername}/module/aolServerGateway"

     ns_param debug false

     ns_param alias "/images"
     ns_param method "GET"
     ns_param method "POST"
     ns_param method "HEAD"
     ns_param server "p6:8080"
     ns_param server "p6:8080"
     ns_param retry 2
     ns_param interval 1000
  
     ns_param alias "/files"
     ns_param method "GET"
     ns_param method "POST"
     ns_param method "HEAD"
     ns_param server "p6:8080"
     ns_param server "p7:8080"
     ns_param retry 2
     ns_param interval 1000
  
     ns_param alias "/cgi-bin"
     ns_param method "GET"
     ns_param method "POST"
     ns_param method "HEAD"
     ns_param server "p5:8080"
     ns_param retry 1
     ns_param interval 1000
  
     ns_param alias "/"
     ns_param method "GET"
     ns_param method "POST"
     ns_param method "HEAD"
     ns_param server "p1:8080"
     ns_param server "p2:8080"
     ns_param server "p3:8080"
     ns_param server "p4:8080"
     ns_param retry 4
     ns_param interval 1000
  
     #
     # Modules to load
     ns_section "ns/server/${servername}/modules"
     ns_param   nssock           ${bindir}/nssock.so
     ns_param   nslog            ${bindir}/nslog.so
     ns_param   nscgi            ${bindir}/nscgi.so
     ns_param   aolServerGateway /iws/bin/linux/aolServerGateway.so

  5. Restart the AOL Web Server. 

-----------------------------------------------------------------------------
INSTALLATION - Apache Gateway

Use the instructions below to configure the Apache Web Server or other 
Application/Web Servers running on Windows 9x/Me/NT/2000/2003/XP supporting
Apache Modules to use Servertec Internet Server as their Servlet Engine. 

  1. Install and configure Servertec Internet Server.

  2. Install and configure Apache Web Server or other Application/Web 
     Server that supports Apache Modules to use Dynamically Loadable 
     Modules. 

  3. Add the following lines to the httpd.conf file. 

     LoadModule apache_gateway_module <mod_path>
     <Location <alias>> 
        SetHandler apache-gateway-handler 
        Debug <debug>
        Server <host_name>:<port>
        Interval <interval>
        Retry <retry>
     </Location> 

     <alias>      the URI used to access the Apache Gateway, 
                  normally /servlet.  
     <debug>      whether to make a dump of the request/response to 
                  \temp\apacheGateway.log [ true | false ], 
                  normally false.
     <host_name>  the name of the computer running Servertec Internet Server.
                  localhost can be used if both servers are running on the
                  same computer.
     <interval>   the number of milliseconds to wait before attempting to
                  retry a workgroup server that is down, a value greater than
                  or equal to 50 ms, normally 1000 ms.
     <mod_path>   the path to the Apache Gateway,
                  normally c:/iws/bin/win32/apacheGateway.dll.
     <port>       is the port number Servertec Internet Server is listening
                  on, normally port 8080.
     <retry>      the number of workgroup server to try to connect to,
                  normally the number of servers defined.

     Notes:
     A separate Server parameter must be entered for each workgroup server.

     Example:

     LoadModule apache_gateway_module c:/iws/bin/win32/apacheGateway.dll

     <Location /images> 
        SetHandler apache-gateway-handler 
        Debug false
        Server p6:8080
        Server p7:8080
        Interval 1000
        Retry 2
     </Location> 

     <Location /files> 
        SetHandler apache-gateway-handler 
        Debug false
        Server p6:8080
        Server p7:8080
        Interval 1000
        Retry 2
     </Location> 

     <Location /cgi-bin> 
        SetHandler apache-gateway-handler 
        Debug false
        Server p5:8080
        Interval 1000
        Retry 1
     </Location> 

     <Location />
        SetHandler apache-gateway-handler 
        Debug false
        Server p1:8080
        Server p2:8080
        Server p3:8080
        Server p4:8080
        Interval 1000
        Retry 4
     </Location> 

  4. Restart the Apache Web Server. 

Notes:
When starting Apache Web Server configured for Secure Socket Layer (SSL)
the following warning will be displayed when loading the Apache Gateway:

c:/iws/bin/win32/apacheGateway.dll uses plain Apache 1.3 API, this module
might crash under EAPI! (please recompile it with -DEAPI)

The Apache Gateway will then loaded and should run without any
problems.

Use the instructions below to configure the Apache Web Server or other 
Application/Web Servers running on Linux/Solaris/Unix supporting Apache
Modules to use Servertec Internet Server as their Servlet Engine. 
  
  1. Install and configure Servertec Internet Server.

  2. Install and configure Apache Web Server or other Application/Web
     Server that supports Apache Modules to use Dynamically Loadable Modules.

  3. Add the following lines to the httpd.conf file. 

     LoadModule apache_gateway_module <mod_path>
     <Location <alias>>
        SetHandler apache-gateway-handler 
        Debug <debug>
        Server <host_name>:<port>
        Interval <interval>
        Retry <retry>
     </Location> 
	  
     <alias>      the URI used to access the Apache Gateway,
                  normally /servlet.
     <debug>      whether to make a dump of the request/response to 
                  /tmp/apacheGateway.log [ true | false ], 
                  normally false.  
     <interval>   the number of milliseconds to wait before attempting to
                  retry a workgroup server that is down, a value greater than
                  or equal to 50 ms, normally 1000 ms.
     <host_name>  the name of the computer running Servertec Internet Server.
                  localhost can be used if both servers are running on the
                  same computer.
     <mod_path>   the path to the Apache Gateway,
                  normally /iws/bin/<platform>/apacheGateway.so.
     <platform>   the platform, linux, solaris/x86 or solaris/sparc.
     <port>       is the port number Servertec Internet Server is listening
                  on, normally port 8080.
     <retry>      the number of workgroup server to try to connect to,
                  normally the number of servers defined.

     Notes:
     A separate Server parameter must be entered for each workgroup server.

     Example:

     LoadModule apache_gateway_module /iws/bin/linux/apacheGateway.so

     <Location /images> 
        SetHandler apache-gateway-handler 
        Debug false
        Server p6:8080
        Server p7:8080
        Interval 1000
        Retry 2
     </Location> 

     <Location /files> 
        SetHandler apache-gateway-handler 
        Debug false
        Server p6:8080
        Server p7:8080
        Interval 1000
        Retry 2
     </Location> 

     <Location /cgi-bin> 
        SetHandler apache-gateway-handler 
        Debug false
        Server p5:8080
        Interval 1000
        Retry 1
     </Location> 

     <Location />
        SetHandler apache-gateway-handler 
        Debug false
        Server p1:8080
        Server p2:8080
        Server p3:8080
        Server p4:8080
        Interval 1000
        Retry 4
     </Location> 

  4. Restart the Apache Web Server.

Notes:
When starting Apache Web Server configured for Secure Socket Layer (SSL)
the following warning will be displayed when loading the Apache Gateway:

/iws/bin/linux/apacheGateway.so uses plain Apache 1.3 API, this module
might crash under EAPI! (please recompile it with -DEAPI)

The Apache Gateway will then loaded and should run without any
problems.

-----------------------------------------------------------------------------
INSTALLATION - ISAPI Gateway

Use the instructions below to configure Microsoft Personal Web Server, 
Internet Information Server or other Application/Web Servers supporting ISAPI 
to use Servertec Internet Server as their Servlet Engine. 

  1. Install and configure Servertec Internet Server.

  2. Install and configure Microsoft Personal Web Server, Internet 
     Information Server or other Application/Web Server that supports 
     ISAPI. 

  3. Define parameters used by the ISAPI Gateway.

     For Windows 9x/Me/XP add the following entries to iserver.ini file in
     c:\windows and for Windows NT/2000/2003 add the following entries to 
	 iserver.ini file in c:\winnt.

     [isapigateway]

     Debug=<debug>
     Handler=/igateway/isapiGateway.dll

     Alias=<alias>
     Server=<hostname>:<port>
     Interval=<interval>
     Retry=<retry>

     <alias>      the URI or file extension used to access the ISAPI Gateway,
                  normally /servlet.
     <debug>      whether to make a dump of the request/response to 
                  \temp\isapiGateway.log [ true | false ], 
                  normally false.  
     <host_name>  the name of the computer running Servertec Internet Server.
                  localhost can be used if both servers are running on the
                  same computer.
     <interval>   the number of milliseconds to wait before attempting to
                  retry a workgroup server that is down, a value greater than
                  or equal to 50 ms, normally 1000 ms.
     <port>       is the port number Servertec Internet Server is listening
                  on, normally port 8080.
     <retry>      the number of workgroup server to try to connect to,
                  normally the number of servers defined.

     Notes:
     Each Alias block is made up an Alias parameter, one or more Server
     parameter, an Interval and a Retry parameter.

     Alias blocks are terminated on the next Alias parameter, empty line
     or at end of file.

     Multiple Alias blocks are evaluated against the request being made in
     the order that they are defined.

     A separate Server parameter must be entered for each workgroup server.

     Example:

     [isapigateway]

     debug=false
     handler=/igateway/isapiGateway.dll

     alias=.jsp
     server=p8:8080
     server=p9:8080
     server=p10:8080
     interval=1000
     retry=3

     alias=/images
     server=p6:8080
     server=p7:8080
     interval=1000
     retry=2

     alias=/files
     server=p6:8080
     server=p7:8080
     interval=1000
     retry=2

     alias=/cgi-bin
     server=p5:8080
     Interval=1000
     Retry=1

     alias=/
     server=p1:8080
     server=p2:8080
     server=p3:8080
     server=p4:8080
     interval=1000
     retry=4
  
  4. Add the following Virtual Directory. 

     For Microsoft Personal Web Server using Personal Web Manager click 
     on Advanced and add the following Virtual Directory. 
   
     Directory    the directory where the ISAPI Gateway was installed,
                  normally c:\iws\bin\win32.
     Alias        the base URI used to access the ISAPI Extension, 
                  normally igateway.  
     Access       the privileges, normally Execute.  
  
     For Microsoft Internet Information Server using Internet Service 
     Manager right mouse click on the Web Site, then click on New, 
     followed by Virtual Directory and Use the New Virtual Directory 
     Wizard to add the following Virtual Directory. 
      
     Alias        the base URI used to access the ISAPI Extension, 
                  normally igateway.  
     Directory    the directory where the ISAPI Gateway was installed,
                  normally c:\iws\bin\win32.
     Permissions  the privileges, normally Execute.
       
     For Microsoft Internet Information Server after adding the Virtual 
     Directory above, select the newly created Virtual Directory by
     right mouse clicking on igateway, then click on Properties and then
     on Directory Security tab. Finally in the Directory Security tab
     click on Edit and then set the Authentication Methods by selecting
     Allow Anonymous Access and clearing Basic Authentication and
     Windows NT Challenge/Response. 

  5. Define the ISAPI Filter. 

      For Microsoft Personal Web Server update the Registry. 
  
         i. Modify c:\iws\install\win32\pws.reg as needed. 
         
            "Filter DLLs"="c:\\iws\\bin\\win32\\isapiGateway.dll" 
         
            Note: Each \\ represents a single \ 
  
        ii. Register it.
  
            regedit c:\iws\install\win32\pws.reg 
  
      For Microsoft Internet Information Server using Internet Service 
      Manager right mouse click on the Web Site, then click on Properties 
      and then on ISAPI Filters tab. Finally in ISAPI Filters tab add the 
      following Filter. 
   
      Filter Name   the name of the Filter, normally isapiGateway.  
      Executable    the path to the ISAPI Filter, 
                    normally c:\iws\bin\win32\isapiGateway.dll.  
    
  6. Restart the computer. 

-----------------------------------------------------------------------------
INSTALLATION - NSAPI Gateway

Use the instructions below to configure the Netscape FastTrack, 
Enterprise Server or other Application/Web Servers supporting NSAPI 
to use Servertec Internet Server as their Servlet Engine. 

  1. Install and configure Servertec Internet Server.

  2. Install and configure Netscape FastTrack, Enterprise Server or
     other Application/Web Server that supports NSAPI. 

  3. Add the following Mime-Type to the mime.types file. 

     type=magnus-internal/servlet exts=servlet 

  4. Add the following lines in the Init section before 
     <Object name=default> to the obj.conf file. 
  
     Init fn=load-modules funcs=process_request shlib="<path>" 
	
     <path>       the path to the NSAPI Gateway,
                  normally c:/iws/bin/win32/nsapiGateway.dll.

  5. Add the following lines in the NameTrans section in 
     <Object name=default> to the obj.conf file. 
    
     NameTrans fn=assign-name from=<alias>* name=<object>
		
     <alias>      the URI used to access the NSAPI Gateway, 
                  normally /servlet.
     <object>     the name of the NSAPI Gateway object, normally igateway.


  6. Add the following lines after <Object name=default> to the obj.conf
     file.

     <Object name=<object>> 
     ObjectType fn=force-type type=magnus-internal/servlet 
     Service fn=process_request 
        method="(<methods>)" 
        type=magnus-internal/servlet 
        debug=<debug>
        server=<host_name>:<port>
        interval=<interval>
        retry=<retry>
     </Object> 
   
     <debug>      whether to make a dump of the request/response to 
                  \temp\nsapiGateway.log [ true | false ], 
                  normally false.  
     <host_name>  the name of the computer running Servertec Internet Server.
                  localhost can be used if both servers are running on the
                  same computer.
     <interval>   the number of milliseconds to wait before attempting to
                  retry a workgroup server that is down, a value greater than
                  or equal to 50 ms, normally 1000 ms.
     <methods>    the request methods to use, normally GET|POST|HEAD.  
     <object>     the name of the NSAPI Gateway object, normally igateway.
     <port>       is the port number Servertec Internet Server is listening
                  on, normally port 8080.
     <retry>      the number of workgroup server to try to connect to,
                  normally the number of servers defined.

     Notes:
     A separate Server parameter must be entered for each workgroup server.

     Example:

     Init fn=load-modules funcs=process_request
          shlib="c:/iws/bin/win32/nsapiGateway.dll"

     NameTrans fn=assign-name from=/files* name=igateway_files
     NameTrans fn=assign-name from=/images* name=igateway_images
     NameTrans fn=assign-name from=/cgi-bin* name=igateway_cgibin
     NameTrans fn=assign-name from=/* name=igateway_default

     <Object name=igateway_images> 
     ObjectType fn=force-type type=magnus-internal/servlet 
     Service fn=process_request 
        method="(GET|POST|HEAD)" 
        type=magnus-internal/servlet 
        debug=false
        server=p6:8080
        server=p7:8080
        interval=1000
        retry=2
     </Object> 

     <Object name=igateway_files> 
     ObjectType fn=force-type type=magnus-internal/servlet 
     Service fn=process_request 
        method="(GET|POST|HEAD)" 
        type=magnus-internal/servlet 
        debug=false
        server=p6:8080
        server=p7:8080
        interval=1000
        retry=2
     </Object> 

     <Object name=igateway_cgibin> 
     ObjectType fn=force-type type=magnus-internal/servlet 
     Service fn=process_request 
        method="(GET|POST|HEAD)" 
        type=magnus-internal/servlet 
        debug=false
        server=p5:8080
        interval=1000
        retry=1
     </Object> 

     <Object name=igateway_root> 
     ObjectType fn=force-type type=magnus-internal/servlet 
     Service fn=process_request 
        method="(GET|POST|HEAD)" 
        type=magnus-internal/servlet 
        debug=false
        server=p1:8080
        server=p2:8080
        server=p3:8080
        server=p4:8080
        interval=1000
        retry=4
     </Object> 

  7. Restart the computer. 

-----------------------------------------------------------------------------
INSTALLATION - CGI Gateway

Use the instructions below to configure other Application/Web Servers running
on Windows Windows 9x/Me/NT/2000/2003/XP supporting Common Gateway Interface 
(CGI) to use Servertec Internet Server as their Servlet Engine. 

  1. Install and configure Servertec Internet Server.

  2. Install and configure the Application/Web Server that supports CGI 
     enabling CGI executables. 

  3. Define variables used by the CGI Gateway. 

     For Windows 9x/Me add the following environment variables to the 
     autoexec.bat file. 
  
     set ISERVER_HOSTNAME = <host_name>
     set ISERVER_PORT = <port> 
     set IGATEWAY_DEBUG = <debug>
      
     <debug>      whether to make a dump of the request/response to 
                  \temp\cgiGateway.log [ true | false ], normally false.  
     <host_name>  the name of the computer running Servertec Internet Server.
                  localhost can be used if both servers are running on the
                  same computer.
     <port>       is the port number Servertec Internet Server is listening
                  on, normally port 8080.
  
     For Windows NT using the Control Panel double-click on System then 
     click on Environment tab and add the following System Variables. 
      
     Variable            Value  
     IGATEWAY_DEBUG      whether to make a dump of the request/response to
                         \temp\cgiGateway.log [ true | false ], 
                         normally false.  
     ISERVER_HOSTNAME    the name of the computer running Servertec Internet
                         Server. localhost can be used if both servers are
                         running on the same computer.
     ISERVER_PORT        is the port number Servertec Internet Server is
                         listening on, normally port 8080.
  
  4. Add the following Virtual Directory. 
   
     Alias        the URI used to access the CGI Gateway, 
                  normally /servlet.  
     Directory    the path the CGI Gateway, 
                  normally c:\iws\bin\win32\cgiGateway.exe.  
     Permissions  the privileges, normally Execute.  
  
  5. Restart the computer. 

Use the instructions below to configure other Application/Web Servers running 
on Linux/Solaris/Unix supporting Common Gateway Interface (CGI) to use
Servertec Internet Server as their Servlet Engine.
  
  1. Install and configure Servertec Internet Server.

  2. Install and configure the Application/Web Server that supports CGI 
     enabling CGI executables. 

  3. Define the following environment variables in the server's login 
     script. 

     export ISERVER_HOSTNAME = <host_name> 
     export ISERVER_PORT = <port> 
     export IGATEWAY_DEBUG = <debug> 
	  
     <debug>      whether to make a dump of the request/response to 
                  /tmp/cgiGateway.log [ true | false ], normally false.  
     <host_name>  the name of the computer running Servertec Internet Server.
                  localhost can be used if both servers are running on the
                  same computer.
     <port>       is the port number Servertec Internet Server is listening
                  on, normally port 8080.

  4. Add the following Virtual Directory to the server's configuration 
     file. 
      
     Alias        the URI used to access the CGI Gateway, 
                  normally /servlet.  
     Directory    the path the CGI Gateway, 
                  normally /iws/bin/<platform>/cgiGateway.  
     Permissions  the privileges, normally Execute.  

     <platform>   the platform, linux, solaris/x86 or solaris/sparc.
  
  5. Logout and log back in. 

  6. Restart the computer.

-----------------------------------------------------------------------------
INSTALLATION - Java Gateway

Use the instructions below to configure other Application/Web Servers running 
on Windows 9x/Me/NT/2000/2003/XP supporting Common Gateway Interface (CGI) to 
use Servertec Internet Server as their Servlet Engine. 

  1. Install and configure Servertec Internet Server.

  2. Install and configure the Application/Web Server that supports CGI 
     enabling CGI executables. 

  3. Define variables used by the Java Gateway. 

     For Windows 9x/Me add the following environment variables to the 
     autoexec.bat file. 
  
     set ISERVER_HOSTNAME = <host_name>
     set ISERVER_PORT = <port> 
     set IGATEWAY_DEBUG = <debug> 
     set CLASSPATH = <class_path>;%CLASSPATH% 
     set JAVA_EXE=<java_path>\bin\java.exe 
      
     <debug>      whether to make a dump of the request/response to 
                  \temp\javaGateway.log [ true | false ],
                  normally false.
     <class_path> the path to the Java Gateway, 
                  normally c:\iws\classes\isg.jar.  
     <host_name>  the name of the computer running Servertec Internet Server.
                  localhost can be used if both servers are running on the
                  same computer.
     <java_path>  the base directory where Java was installed.  
     <port>       is the port number Servertec Internet Server is listening
                  on, normally port 8080.
  
     For Windows NT using the Control Panel double-click on System then 
     click on Environment tab and add the following System Variables. 
      
     Variable            Value  
     CLASSPATH           the path to the Java Gateway, 
                         normally c:\iws\classes\isg.jar;%CLASSPATH%.  
     IGATEWAY_DEBUG      whether to make a dump of the request/response to 
                         \temp\javaGateway.log [ true | false ], 
                         normally false.  
     ISERVER_HOSTNAME    the name of the computer running Servertec Internet
                         Server. localhost can be used if both servers are
                         running on the same computer.
     ISERVER_PORT        is the port number Servertec Internet Server is
                         listening on, normally port 8080.
     JAVA_EXE            the base directory where Java was installed.  

  4. Add the following Virtual Directory. 
   
     Alias        the URI used to access the Java Gateway, 
                  normally /servlet.  
     Directory    the path the Java Gateway executable, 
                  normally c:\iws\bin\win32\javaGateway.exe.  
     Permissions  the privileges, normally Execute.  
  
  5. Restart the computer. 

Use the instructions below to configure other Application/Web Servers running 
on Linux/Solaris/Unix supporting Common Gateway Interface (CGI) to use
Servertec Internet Server as their Servlet Engine. 
  
  1. Install and configure Servertec Internet Server.

  2. Install and configure the Application/Web Server that supports CGI 
     enabling CGI executables. 

  3. Define the following environment variables in the server's login 
     script. 

     export ISERVER_HOSTNAME = <host_name> 
     export ISERVER_PORT = <port> 
     export IGATEWAY_DEBUG = <debug> 
     export CLASSPATH = "<class_path>:${CLASSPATH}" 
     export JAVA_EXE = "<java_path>/bin/java" 
      
     <debug>      whether to make a dump of the request/response to 
                  /tmp/javaGateway.log [ true | false ], normally false.  
     <class_path> the path to the Java Gateway, 
                  normally /iws/classes/isg.jar.  
     <host_name>  the name of the computer running Servertec Internet Server.
                  localhost can be used if both servers are running on the
                  same computer.
     <java_path>  the base directory where Java was installed.  
     <port>       is the port number Servertec Internet Server is listening
                  on, normally port 8080.

  4. Add the following Virtual Directory to the server's configuration 
     file. 
      
     Alias        the URI used to access the Java Gateway, 
                  normally /servlet.  
     Directory    the path the Java Gateway, 
                  normally /iws/bin/<platform>/javaGateway.  
     Permissions  the privileges, normally Execute.  

     <platform>   the platform, linux, solaris/x86 or solaris/sparc.

  5. Logout and log back in. 

  6. Restart the computer.

-----------------------------------------------------------------------------
HOW TO

To start Servertec Internet Server:

  Open a command shell and enter:

  iws { <path> | <archive> }

  <archive>     the JAR/ZIP archive containing the Web-site to use.
  <path>        the directory where Servertec Internet Server was installed
                or deployed, normally c:\iws for Windows 9x/Me/NT/2000/2003/XP,
                /iws for Linux/Solaris/Unix and SYS:\iws for Novell Netware.

To test Servertec Internet Server:

  Run Servertec Internet Server and from a Web Browser enter:

  <protocol>://<hostname>:<port>

  <hostname>    the name of the computer running Servertec Internet Server,
                normally localhost
  <port>        the port number Servertec Internet Server is listening on,
                normally port 8080
  <protocol>    the Web protocol, normally http

  Then click on Samples, click on the sample to run and click on run.

To administer Servertec Internet Server:

  Assuming Servertec Internet Server is already running from a Web Browser
  enter:

  <protoco>://<hostname>:<port>/admin.html

  <hostname>    the name of the computer running Servertec Internet Server,
                normally localhost
  <port>        the port number Servertec Internet Server is listening on,
                normally port 8080
  <protocol>    the Web protocol, normally http

  Then login by entering admin for Username and admin for Password.
  Once login click on the name of the Server to administer and then in the
  Control Panel click on Manage.

To stop Servertec Internet Server:

  Assuming Servertec Internet Server is already running from a command shell
  enter:

  stop_iws <hostname>:<port> <id> <password>
  
  <hostname>    the name of the computer running Servertec Internet Server,
                normally localhost
  <id>          the user id of the administrator, normally admin
  <password>    the password used by the administrator, normally admin
  <port>        the port number Servertec Internet Server is listening on,
                normally port 8080

  or from a Web Browser enter:

  <protocol>://<hostname>:<port>/admin.html

  <hostname>    the name of the computer running Servertec Internet Server,
                normally localhost
  <port>        the port number Servertec Internet Server is listening on,
                normally port 8080
  <protocol>    the Web protocol, normally http

  Then login by entering admin for Username and admin for Password.
  Once login click on the name of the Server to shut down, normally
  localhost:8080 and then in the Control Panel click on the STOP button.

To test Servertec Internet Server Gateway:

  Install and configure Servertec Internet Server and the appropriate
  Gateway, start Servertec Internet Server and then the Web/Application
  Server and finally from a Web Browser enter:

  <protocol>://<hostname>:<port>/servlet/HelloServlet

  <hostname>    the name of the computer running the Application/Web Server,
                normally localhost
  <port>        the port number the Application/Web Server is listening on,
                normally 80
  <protocol>    the Web protocol, normally http

To configure Servertec Internet Server for IPv6:

  1. Configure the underlying platform and network for IPv6.

  2. Install a Java implementation that supports IPv6.

  3. Start Servertec Internet Server and from the Administrator set IP Address
     in the Socket Form to a valid IPv6 address in the form 
	 <H>:<H>:<H>:<H>:<H>:<H>:<H>:<H>, where <H> is a hexidecimal number from
	 0000 to FFFF.

  4. Restart Servertec Internet Server

To setup Servertec Internet Server as a Windows NT/2000/2003/XP Service when
using Java 1.1.x:

  1. Install and configure Servertec Internet Server.

  2. Using <iws_dir>\install\win32\iserver.ini as a template, create
     iserver.ini in Windows directory, normally c:\WINNT for Windows 
	 NT/2000/2003 and c:\Windows for Windows XP.

     [j1service]
     Debug=<debug>
     JAVA_EXE=<java_exe>
     CLASSPATH=<classpath>
     IWS_PATH=<iws_dir>
     hostname=<hostname>
     port=<port>
     username=<username>
     password=<password>

     <classpath>  the CLASSPATH to use,
                  normally set to the environment variable %CLASSPATH%
     <debug>      whether to dump information useful in debugging j1service,
                  normally false
     <hostname>   the name of the computer running Servertec Internet Server,
                  normally localhost
     <iws_dir>    the base directory where Servertec Internet Server was
                  installed or deployed, normally c:\iws
     <java_exe>   the Java VM to use, normally set to the environment
                  variable %JAVA_EXE%
     <password>   the password used by the administrator, normally admin
     <port>       the port number Servertec Internet Server is listening on,
                  normally 80
     <username>   the user id of the administrator, normally admin

  3. Open an MS-DOS Prompt and enter:

     j1service -i

  4. Restart the computer.

  Notes:
  When running Windows NT environment variables must be defined in
  Start->Settings->Control Panel->System->Environment->System Variables.

  When running Windows 2000 environment variables must be defined in
  Start->Settings->Control Panel->System->Advanced->Environment Variables->
  System Variables.

  When running Windows XP environment variables must be defined in
  Control Panel->System->Advanced->Environment Variables->System Variables.

  When Debug is set to true j1service.log is created in c:\temp directory.

  To remove Servertec Internet Server NT/2000/2003/XP Service, open an 
  MS-DOS Prompt and enter:

  j1service -r

To setup Servertec Internet Server as a Windows NT/2000/2003/XP Service when
using Java 2:

  1. Install and configure Servertec Internet Server.

  2. Using <iws_dir>\install\win32\iserver.ini as a template, create
     iserver.ini in Windows directory, normally c:\WINNT in Windows 
	 NT/2000/2003 and c:\Windows in Windows XP.

     [j2service]
     Debug=<debug>
     Option=-DSERVICE
     Option=-Djava.class.path=<classpath>
     Parameter=<iws_dir>
     JavaVM=<java_vm>

     <classpath>  the CLASSPATH to use,
                  normally set to the environment variable %CLASSPATH%
     <debug>      whether to dump information useful in debugging j2service,
                  normally false
     <iws_dir>    the base directory where Servertec Internet Server was
                  installed or deployed, normally c:\iws
     <java_dir>   the base directory where Java was installed
     <java_vm>    the java vm, normally <java_dir>\jre\bin\classic\jvm.dll
                  for Java 1.2.x and <java_dir>\jre\bin\hotspot\jvm.dll
                  for Java 1.3.x and <java_dir>\jre\bin\client\jvm.dll
                  or <java_dir>\jre\bin\server\jvm.dll for Java 1.4.x or
                  later or when HotSpot is installed

  3. Open an MS-DOS Prompt and enter:

     j2service -i

  4. Restart the computer.

  Notes:
  When running Windows NT environment variables must be defined in
  Start->Settings->Control Panel->System->Environment->System Variables.

  When running Windows 2000 environment variables must be defined in
  Start->Settings->Control Panel->System->Advanced->Environment Variables->
  System Variables.

  When running Windows XP environment variables must be defined in
  Control Panel->System->Advanced->Environment Variables->System Variables.

  When Debug is set to true j2service.log is created in c:\temp directory.

  To remove Servertec Internet Server NT/2000/2003/XP Service, open an 
  MS-DOS Prompt and enter:

  j2service -r

To automatically run Servertec Internet Server when Windows 9x/Me starts:

  1. Install and configure Servertec Internet Server.

  2. Open an MS-DOS Prompt and enter:

     cd <iws_dir>\install\win32

     <iws_dir>    the directory where Servertec Internet Server was
                  installed, normally c:\iws

  3. Change iServer.reg as needed

  4. From the MS-DOS Prompt enter:

     regedit iServer.reg

  5. Restart the computer.

  Notes:
  When Servertec Internet Server is started this way it will only start when
  a user is logged on and will need to be manually stopped using stop_iws or
  from the Administrator before the user logs off or the system is shut down
  or restarted. Ctrl+C or Ctrl+Break should not be used to stop Servertec
  Internet Server.

To setup Servertec Internet Server as a Linux/Unix init daemon:

  1. Login as root.

  2. Open a shell prompt and enter:

     cp <iws_dir>/install/linux/iws /etc/rc.d/init.d
     chmod u+x,g+x /etc/rc.d/init.d

     <iws_dir>    is the directory where Servertec Internet Server was
                  installed, normally /iws

  3. Change iws as needed.

  4. For every init level that Servertec Internet Server will be stopped
     enter:

     ln -s /etc/rc.d/init.d/iws /etc/rc.d/rc<level>.d/K19iws

     <level>      is 0-9, normally 0-2, 6

  5. For every init level that Servertec Internet Server will be started
     enter:

     ln -s /etc/rc.d/init.d/iws /etc/rc.d/rc<level>.d/S89iws

     <level>      is 0-9, normally 3-5

  6. Restart the computer.

To setup Servertec Internet Server as a Solaris init daemon:

  1. Login as root.

  2. Open a shell prompt and enter:

     cp <iws_dir>/install/linux/iws /etc/init.d
     chmod u+x,g+x /etc/init.d

     <iws_dir>    is the directory where Servertec Internet Server was
                  installed, normally /iws

  3. Change iws as needed.

  4. For every init level that Servertec Internet Server will be stopped
     enter:

     ln -s /etc/init.d/iws /etc/rc<level>.d/K19iws

     <level>      is 0-9, normally 0-1, 5-6, S

  5. For every init level that Servertec Internet Server will be started
     enter:

     ln -s /etc/init.d/iws /etc/rc<level>.d/S89iws

     <level>      is 0-9, normally 2-4

  6. Restart the computer.

To setup Servertec Internet Server as a Secure Server using Java Secure
Socket Extension (JSSE):

  1. If running Java 1.3.x or earlier then install Java Secure 
     Socket Extension (JSSE) version 1.0.1 or later.

  2. If running Java 1.3.x or earlier then add the following entries
     to the CLASSPATH:

     Windows 9x/Me/NT/2000/2003/XP:
     set CLASSPATH=<jsse_dir>\lib\jsse.jar;%CLASSPATH%
     set CLASSPATH=<jsse_dir>\lib\jcert.jar;%CLASSPATH%
     set CLASSPATH=<jsse_dir>\lib\jnet.jar;%CLASSPATH%

     Linux/Solaris/Unix:
     export CLASSPATH="<jsse_dir>/lib/jsse.jar:$CLASSPATH"
     export CLASSPATH="<jsse_dir>/lib/jcert.jar:$CLASSPATH"
     export CLASSPATH="<jsse_dir>/lib/jnet.jar:$CLASSPATH"

     Novell Netware:
     CLASSPATH=<jsse_dir>\lib\jsse.jar;$CLASSPATH
     CLASSPATH=<jsse_dir>\lib\jcert.jar;$CLASSPATH
     CLASSPATH=<jsse_dir>\lib\jnet.jar;$CLASSPATH

     <jsse_dir>  the directory where JSSE was installed.

  3. Restart the computer.

  4. Start Servertec Internet Server and from the Administrator -
     Certificates generate a new Self-Signed Certificate by clicking on the
     GENERATE button, entering the required information and submitting the
     form.

  5. Optionally, use the following steps to install a Certification Authority
     (CA) certificate.

     i. Import any necessary root CA certicate into cacerts by opening an
        MS-DOS Prompt or Linux/Solaris/Unix shell prompt and entering:

        keytool -import -alias <alias>
                -keystore <keystore>
                -file <filename>
                -storepass <password>

        <alias>     the alias name of the root CA certificate.
        <filename>  the directory path and name of the file containing the
                    root CA certificate.
        <java_dir>  the directory where Java was installed
        <keystore>  <java_dir>/jre/lib/security/cacerts for
                    Windows 9x/Me/NT/2000/2003/XP and Linux/Solaris/Unix and
                    <java_dir>/lib/security/cacerts for Novell Netware
        <password>  the keystore password, normally changeit

    ii. Generate a Certificate Signing Request (CSR) for the Self-Signed
        Certificate by clicking the REQUEST button in the Administrator -
        Certificates.

   iii. Submit the CSR to a CA.

        Entrust (http://www.entrust.com), Thawte (http://www.thawte.com) and
        VeriSign (http://www.verisign.com) are popular Certification
        Authorities.

    iv. Import the Response Certificate overwriting the original Certificate
        by clicking IMPORT button in the Administrator - Certificates, using
        the same Alias as the Self-Signed Certificate and entering the File
        Name of the file containing the Response Certificate selecting the
        Check cacerts and Ignore Warnings and clicking on the OK button.

  6. Use the following steps to install a client certificate for the server's
     certificate on each computer that stop_iws, restart_iws, iwsSSLCommand
     and iws will be used on.

     i. Export the certificate by clicking the EXPORT button in the
        Administrator - Certificates.

    ii. Open an MS-DOS Prompt or Linux/Solaris/Unix shell prompt and enter:

        keytool -import -alias <alias>
                -keystore <keystore>
                -file <cert_dir>/<alias>.cer
                -storepass <password>

        <alias>     the alias name of the self-signed certificate,
                    normally mykey
        <cert_dir>  the directory where the self-signed certificate was
                    exported to
        <java_dir>  the directory where Java was installed
        <keystore>  <java_dir>/jre/lib/security/cacerts for
                    Windows 9x/Me/NT/2000/2003/XP and Linux/Solaris/Unix and
                    <java_dir>/lib/security/cacerts for Novell Netware
        <password>  the keystore password, normally changeit

  7. From the Administrator - Server set the SecureSocketHandler to
     stec.iws.JsseSecureSocketHandler.

  8. From the Administrator - Server form enable SSL Support.

  9. From the Administrator - Server form change Port as needed,
     normally Secure Servers use port 443.

 10. Restart Servertec Internet Server and from a Web Browser enter:

     https://<hostname>:<port>

     <hostname>   the name of the computer running Servertec Internet Server,
                  normally localhost
     <port>       the port number Servertec Internet Server is listening on,
                  normally 443

Notes:
The Certificate Administrator only accepts tele-type printable characters
[ A-Z, a-z, 0-9, `~!@#$%^&*()-_=+\|[{]};:'", <.>/? [. Some of the accepted
characters, such as comma and slash, must be prefixed by \. Finally, not all
Certificate Authorities allow the complete list of tele-type printable
characters in request certificates.

The Certificate Administrator will only import Response Certificates
that contain a complete Certificate Chain or Response Certificates whose
Certificate Chain can be established using an existing Root CA Certificate.

JSSE requires Java 1.2.0 or later.

Keystore and Certificate Administrators require Java 1.3.0 or later.

Web Browsers will accept Self-Signed Certificates after displaying a warning
that they are self-signed.

Web Browsers will accept Test Certificates from Certification Authorities
after displaying a warning that they can not be trusted.

The following restrictions apply only when Servertec Internet Server is
running with SSL Support enabled:

    - Requested URLs must use https Web protocol.

    - iws will not run when SSL is enabled unless one or more valid
      certificates exist in the server's keystore.

    - When SSL is enabled and Java's cacerts keystore does not contain a
      valid root CA certificate for the server's certificate, restart_iws,
      stop_iws, iwsSSLCommand and Administrator - Monitor will display
      untrusted server cert chain.

    - The server can not be specified as a server in any of the Servertec
      Internet Server Gateways.

    - The server can not be specified as a server in ClusterProxy or
      ClusterRedirector.

To setup Servertec Internet Server as a Secure Server using Novell Netware
Java Secure Socket Layer (JavaSSL):

  1. If Novell Netware Certificate Server has not already been installed,
     install it and create a certificate for the server.

  2. Install Novell Netware Java Secure Socket Layer (JavaSSL) October 1999
     release or later.

  3. Add the following entries to SYS:\etc\java.cfg:

     CLASSPATH=SYS:\javassl\jdk_1.1_version\lib\ssl_sdk1.1.jar;
     SYS:\javassl\jdk_1.1_version\lib\nssl1.1_exp.jar;$CLASSPATH

  4. Change <iws_dir>\config\server_properties.ini and
     <iws_dir>\config\client_properties.ini as following:

     nssl.keystore = SSL CertificateIP - <hostname>

     <hostname>   the name of the computer running Novell Certificate Server

  5. Change <iws_dir>\config\iws.ini as following:

     port=<port>
     ssl=y
     secure_socket_handler=stec.iws.NetwareSecureSocketHandler
     ?server_properties=./config/server_properties.ini
     &client_properties=./config/client_properties.ini

     <port>       the port number Servertec Internet Server is listening on,
                  normally Secure Servers use port 443.

  6. Change <iws_dir>\config\logger.ini as following:

     ignore_exceptions = java.net.SocketException,
     com.novell.service.security.net.nssl.SSLComponentException

  7. Restart the Netware computer.

  8. Use the following steps to install a root CA certificate for the
     server's certificate on each computer that stop_iws, restart_iws and
     iwsSSLCommand will be used on.

     i. Copy the certificate at SYS:\PUBLIC\RootCert.der to a local
        drive.

    ii. Open an MS-DOS Prompt or Linux/Solaris/Unix shell prompt and enter:

        keytool -import -alias <alias>
                -keystore <java_dir>/jre/lib/security/cacerts
                -file <cert_dir>/RootCert.der
                -storepass password

        <alias>     the alias name of the self-signed certificate,
                    normally mykey
        <cert_dir>  the directory where the self-signed certificate was
                    copied to
        <java_dir>  the directory where Java was installed
        <password>  the keystore password, normally changeit

  9. Optionally, install a Certification Authority (CA) certificate.

 10. Start Servertec Internet Server and from a Web Browser enter:

     https://<hostname>:<port>

     <hostname>   the name of the computer running Servertec Internet Server,
                  normally localhost
     <port>       the port number Servertec Internet Server is listening on,
                  normally 443

Notes:
Requires that <iws_dir>/classes/optional.jar be present in the CLASSPATH.

The Keystore and Certificate Administrator can not be used, since Novell
Netware Certificate Server is used to manage certificates.

Web Browsers will accept Self-Signed Certificates after displaying a warning
that they are self-signed.

Web Browsers will accept Test Certificates from Certification Authorities
after displaying a warning that they can not be trusted.

The following restrictions apply only when Servertec Internet Server is
running with SSL Support enabled:

    - Requested URLs must use https Web protocol

    - iws will not run when SSL is enabled unless one or more valid
      certificates exist.

    - When SSL is enabled and Java's cacerts keystore does not contain a
      valid root CA certificate for the server's certificate, restart_iws,
      stop_iws, iwsSSLCommand and Administrator - Monitor will display
      untrusted server cert chain.

    - The server can not be specified as a server in any of the Servertec
      Internet Server Gateways.

    - The server can not be specified as a server in ClusterProxy or
      ClusterRedirector.

    - <iws_dir>\config\client_properties.ini and
      <iws_dir>\config\server_properties.ini can also be used to specify
      additional optional Netware Java SSL engine parameters as defined in
      the documentation for JavaSSL in
      SYS:\JavaSSL\JDK_1.1_Version\doc\api\index.html.

-----------------------------------------------------------------------------
CONTACT US

At Servertec, we value what you have to say. We are committed to defining
our products based on your needs. Please send us your questions, comments,
suggestions and problems.

General Information     info@servertec.com

Licensing Information   legal@servertec.com

Technical Support       support@servertec.com

Web Site                webmaster@servertec.com

Address                 Servertec
                        18 Oakwood Avenue
                        Kearny, NJ 07032

-----------------------------------------------------------------------------
Copyright (C) 1998-2005 Servertec. All rights reserved.
