From: Andre Malo Date: Sun, 15 Sep 2002 02:25:58 +0000 (+0000) Subject: new XML X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=b5a6c01afbe9a7c33c18d1b8bfea30ba8b73509a;p=apache new XML Submitted by: Tim Gerundt git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@96822 13f79535-47bb-0310-9956-ffa450edef68 --- diff --git a/docs/manual/platform/netware.html b/docs/manual/platform/netware.html deleted file mode 100644 index ea9696a69c..0000000000 --- a/docs/manual/platform/netware.html +++ /dev/null @@ -1,512 +0,0 @@ - - - - - - - Using Apache with Novell NetWare - - - - - - -

Using Apache With Novell NetWare

- -

This document explains how to install, configure and run - Apache 2.0 under Novell NetWare 5.1 and above. If you find any bugs, - or wish to contribute in other ways, please - use our bug reporting - page.

- -

The bug reporting page and dev-httpd mailing list are not - provided to answer questions about configuration or running Apache. - Before you submit a bug report or request, first consult this document, the - Frequently Asked Questions page and the other - relevant documentation topics. If you still have a question or problem, - post it to the - novell.devsup.webserver newsgroup, where many - Apache users are more than willing to answer new - and obscure questions about using Apache on NetWare.

- - Most of this document assumes that you are installing Apache - from a binary distribution. If you want to compile Apache - yourself (possibly to help with development, or to track down - bugs), see the section on Compiling Apache for - NetWare below. -
- - -
- -

Requirements

- Apache 2.0 is designed to run on NetWare 5.1 and above. - -

If running on NetWare 5.1 you must install Service - Pack 4 or above.

- -

If running on NetWare 6 you must install Service - Pack 1 or above.

- -

NetWare service packs are available here.

- -

Downloading Apache for NetWare

- -

Information on the latest version of Apache can be found on - the Apache web server at http://www.apache.org/. This - will list the current release, any more recent alpha or - beta-test releases, together with details of mirror web and - anonymous ftp sites.

- -

Installing Apache for - NetWare

- There is no Apache install program for NetWare currently. You - will need to compile apache and copy the files over to the - server manually. An install program will be posted at a later - date.  - -

Follow these steps to install Apache on NetWare from the - binary download (assuming you will install to sys:/apache2):

- - - -

Follow these steps to install Apache on NetWare manually - from your own build source (assuming you will install to - sys:/apache):

- - - -

Apache may be installed to other volumes besides the default SYS volume.

- -

Running Apache for NetWare

- To start Apache just type apache at the - console. This will load apache in the OS address space. If you - prefer to load Apache in a protected address space you may - specify the address space with the load statement as follows: -
-    load address space = apache2 apache2
-
- -

This will load Apache into an address space called apache. - Running multiple instances of Apache concurrently on NetWare is - possible by loading each instance into its own protected - address space.

- -

After starting Apache, it will be listening to port 80 - (unless you changed the Listen directive in the configuration - files). To connect to the server and access the default page, - launch a browser and enter the server's name or address. This - should respond with a welcome page, and a link to the Apache - manual. If nothing happens or you get an error, look in the - error_log file in the logs - directory.

- -

Once your basic installation is working, you should - configure it properly by editing the files in the - conf directory.

- -

To unload Apache running in the OS address space just type - the following at the console:

-
-    unload apache2
-
-
or
-
-
    apache2 shutdown
-
- If apache is running in a protected address space specify the - address space in the unload statement: -
-    unload address space = apache2 apache2
-
- -

When working with Apache it is important to know how it will - find the configuration files. You can specify a configuration - file on the command line in two ways:

- - -
-    apache2 -f "vol:/my server/conf/my.conf"
-
-
-    apache -f test/test.conf
-
- In these cases, the proper ServerRoot should be set in the - configuration file. - -

If you don't specify a configuration file name with -f, - Apache will use the file name compiled into the server, usually - "conf/httpd.conf". Invoking Apache with the -V switch will - display this value labeled as SERVER_CONFIG_FILE. Apache will - then determine its ServerRoot by trying the following, in this - order:

- - - -

The server root compiled into the server is usually "sys:/apache2". invoking apache with the -V switch will display - this value labeled as HTTPD_ROOT.

- -

Apache 2.0 for NetWare includes a set of command line directives that can - be used to modify or display information about the running instance of the - web server.  Each of these directives must be preceded by the keyword - APACHE2:

- - - -

Configuring Apache for - NetWare

- Apache is configured by files in the conf - directory. These are the same as files used to configure the - Unix version, but there are a few different directives for - Apache on NetWare. See the Apache - documentation for all the available directives. - -

The main differences in Apache for NetWare are:

- - - -

- - - Additional NetWare specific directives:

- - - -

Compiling Apache for - NetWare

- -

Compiling Apache requires MetroWerks CodeWarrior 6.x or - higher to be properly installed.  Once Apache has been built, it needs to be installed on a NetWare - volume's root directory. The default is the - sys:/Apache2 directory.

- -

Before running the server you must fill out the conf - directory. Copy the file HTTPD-STD.CONF from the distribution conf - directory and rename it to HTTPD.CONF. Edit the HTTPD.CONF file searching for all @@Value@@ markers - and replacing them with the appropriate setting. Copy over - the conf/magic and conf/mime.types files as well.

- - -

- - - Requirements: 

-

- The following development tools are required to build Apache 2.0 - for NetWare:

- -

Building Apache using the Metrowerks Project Files: 

- -

All major pieces of Apache and APR are built using the - ApacheNW.mcp and LibAprNW.mcp project files. This includes modules such as - status, info, proxy, etc.

- - - -

Building Apache using the NetWare makefiles: 

- - -

Additional make options

- - -
- - - - diff --git a/docs/manual/platform/netware.html.en b/docs/manual/platform/netware.html.en new file mode 100644 index 0000000000..da25e0307a --- /dev/null +++ b/docs/manual/platform/netware.html.en @@ -0,0 +1,583 @@ + + +Using Apache With Novell NetWare - Apache HTTP Server
<-

Using Apache With Novell NetWare

+ +

This document explains how to install, configure and run + Apache 2.0 under Novell NetWare 5.1 and above. If you find any bugs, + or wish to contribute in other ways, please use our + bug reporting + page.

+ +

The bug reporting page and dev-httpd mailing list are not + provided to answer questions about configuration or running Apache. + Before you submit a bug report or request, first consult this document, the + Frequently Asked Questions page and the other + relevant documentation topics. If you still have a question or problem, + post it to the + novell.devsup.webserver newsgroup, where many Apache users are more than + willing to answer new and obscure questions about using Apache on NetWare.

+ +

Most of this document assumes that you are installing Apache + from a binary distribution. If you want to compile Apache + yourself (possibly to help with development, or to track down + bugs), see the section on Compiling Apache for + NetWare below.

+ +
top

Requirements

+ + + +

Apache 2.0 is designed to run on NetWare 5.1 and above.

+ +

If running on NetWare 5.1 you must install Service + Pack 4 or above.

+ +

If running on NetWare 6 you must install Service + Pack 1 or above.

+ +

NetWare service packs are available here.

+ +
top

Downloading Apache for NetWare

+ + + +

Information on the latest version of Apache can be found on + the Apache web server at http://www.apache.org/. This + will list the current release, any more recent alpha or + beta-test releases, together with details of mirror web and + anonymous ftp sites.

+ +
top

Installing Apache for NetWare

+ + + +

There is no Apache install program for NetWare currently. You + will need to compile apache and copy the files over to the + server manually. An install program will be posted at a later + date.

+ +

Follow these steps to install Apache on NetWare from the + binary download (assuming you will install to + sys:/apache2):

+ +
    +
  • Unzip the binary download file to the root of the SYS: + volume (may be installed to any volume)
  • + +
  • Edit the httpd.conf file setting ServerRoot and ServerName to reflect your correct server + settings
  • + +
  • Add SYS:/APACHE2 to the search path, for example: +

    SEARCH ADD SYS:\APACHE2

    +
  • + +
+ +

Follow these steps to install Apache on NetWare manually + from your own build source (assuming you will install to + sys:/apache):

+ +
    +
  • Create a directory called Apache2 on a + NetWare volume
  • + +
  • Copy APACHE2.NLM, APRLIB.NLM, + HTDIGEST.NLM, HTPASSWD.NLM + to SYS:/APACHE2
  • + +
  • Create a directory under SYS:/APACHE2 + called CONF
  • + +
  • Copy the HTTPD-STD.CONF file to the + SYS:/APACHE2/CONF directory and rename to + HTTPD.CONF
  • + +
  • Copy the MIME.TYPES and MAGIC + files to SYS:/APACHE2/CONF directory
  • + +
  • Copy all files and subdirectories in \HTTPD-2.0\DOCS\ICONS + to SYS:/APACHE2/ICONS
  • + +
  • Copy all files and subdirectories in \HTTPD-2.0\DOCS\MANUAL + to SYS:/APACHE2/MANUAL
  • + +
  • Copy all files and subdirectories in \HTTPD-2.0\DOCS\ERROR + to SYS:/APACHE2/ERROR
  • + +
  • Copy all files and subdirectories in \HTTPD-2.0\DOCS\DOCROOT + to SYS:/APACHE2/HTDOCS
  • + +
  • Create the directory SYS:/APACHE2/LOGS + on the server
  • + +
  • Create the directory SYS:/APACHE2/CGI-BIN + on the server
  • + +
  • Create the directory SYS:/APACHE2/MODULES + and copy all nlm modules into the modules directory
  • + +
  • Edit the HTTPD.CONF file searching for all + @@Value@@ markers and replacing them with the + appropriate setting
  • + +
  • Add SYS:/APACHE2 to the search path, for example: +

    SEARCH ADD SYS:\APACHE2

    +
  • +
+ +

Apache may be installed to other volumes besides the default SYS volume.

+ +
top

Running Apache for NetWare

+ + + +

To start Apache just type apache at the + console. This will load apache in the OS address space. If you + prefer to load Apache in a protected address space you may + specify the address space with the load statement as follows:

+ +

+ load address space = apache2 apache2 +

+ +

This will load Apache into an address space called apache. + Running multiple instances of Apache concurrently on NetWare is + possible by loading each instance into its own protected + address space.

+ +

After starting Apache, it will be listening to port 80 + (unless you changed the Listen + directive in the configuration files). + To connect to the server and access the default page, + launch a browser and enter the server's name or address. This + should respond with a welcome page, and a link to the Apache + manual. If nothing happens or you get an error, look in the + error_log file in the logs + directory.

+ +

Once your basic installation is working, you should + configure it properly by editing the files in the + conf directory.

+ +

To unload Apache running in the OS address space just type + the following at the console:

+ +

+ unload apache2 +

+ +

or

+ +

+ apache2 shutdown +

+ +

If apache is running in a protected address space specify the + address space in the unload statement:

+ +

+ unload address space = apache2 apache2 +

+ +

When working with Apache it is important to know how it will + find the configuration files. You can specify a configuration + file on the command line in two ways:

+ +
    +
  • -f specifies a path to a particular + configuration file
  • +
+ +

+ apache2 -f "vol:/my server/conf/my.conf" +

+ +

+ apache -f test/test.conf +

+ +

In these cases, the proper ServerRoot + should be set in the configuration file.

+ +

If you don't specify a configuration file name with -f, + Apache will use the file name compiled into the server, usually + conf/httpd.conf. Invoking Apache with the -V + switch will display this value labeled as SERVER_CONFIG_FILE. + Apache will then determine its ServerRoot + by trying the following, in this order:

+ +
    +
  • A ServerRoot directive via a + -C switch.
  • + +
  • The -d switch on the command line.
  • + +
  • Current working directory
  • + +
  • The server root compiled into the server.
  • +
+ +

The server root compiled into the server is usually sys:/apache2. + invoking apache with the -V switch will display this value labeled as + HTTPD_ROOT.

+ +

Apache 2.0 for NetWare includes a set of command line directives that can + be used to modify or display information about the running instance of the + web server. Each of these directives must be preceded by the keyword + APACHE2:

+ +
+
RESTART
+
Instructs Apache to terminate all running worker + threads as they become idle, reread the configuration file and restart each + worker thread based on the new configuration.
+ +
VERSION
+
Displays version information about the currently + running instance of Apache.
+ +
MODULES
+
Displays a list of loaded modules both built-in + and external.
+ +
DIRECTIVES
+
Displays a list of all available directives.
+ +
SETTINGS
+
Enables or disables the thread status display + on the console. When enabled, a status of the number of running threads + is displayed along with their status.
+ +
SHUTDOWN
+
Terminates the running instance of the Apache + web server.
+
+ +
top

Configuring Apache for NetWare

+ + + +

Apache is configured by files in the conf + directory. These are the same as files used to configure the + Unix version, but there are a few different directives for + Apache on NetWare. See the Apache + documentation for all the available directives.

+ +

The main differences in Apache for NetWare are:

+ +
    +
  • +

    Because Apache for NetWare is multithreaded, it does not + use a separate process for each request, as Apache does in some Unix + implementations. Instead there are only threads running: a parent + thread, and a multiple child threads which handle the requests.

    + +

    So the "process"-management directives are different:

    + +

    MaxRequestsPerChild - + Like the Unix directive, this controls how many requests + a worker thread will serve before exiting. The recommended default, + MaxRequestsPerChild 0, causes the thread to continue servicing + request indefinitely. It is recommended on NetWare, unless there is some + specific reason, that this directive always remain set to 0.

    + +

    StartThreads - + This directive tells the server how many threads it should start initially. + The recommended default is StartThreads 50.

    + +

    MinSpareThreads - + This directive instructs the server to spawn additional worker threads + if the number of idle threads ever falls below this value. The recommended + default is MinSpareThreads 10.

    + +

    MaxSpareThreads - + This directive instructs the server to begin terminating worker threads + if the number of idle threads ever exceeds this value. The recommended + default is MaxSpareThreads 100.

    + +

    MaxThreads - + This directive limits the total number of work threads to a maximum + value. The recommended default is ThreadsPerChild 250.

    + +

    ThreadStackSize - + This directive tells the server what size of stack to use + for the individual worker thread. The recommended default + is ThreadStackSize 65536.

    +
  • + +
  • +

    The directives that accept filenames as arguments now + must use NetWare filenames instead of Unix ones. However, + because Apache uses Unix-style names internally, you must + use forward slashes, not backslashes. It is recommended that all rooted + file paths begin with a volume name. If omitted, Apache will + assume the SYS: volume.

    +
  • + +
  • +

    Apache for NetWare has the ability to load modules at + runtime, without recompiling the server. If Apache is + compiled normally, it will install a number of optional + modules in the \Apache2\modules directory. + To activate these, or other modules, the LoadModule directive + must be used. For example, to active the status module, use + the following (in addition to the status-activating + directives in access.conf):

    + +

    + LoadModule status_module modules/status.nlm +

    + +

    Information on creating loadable + modules is also available.

    +
  • +
+ +

Additional NetWare specific directives:

+ + + +
    +
  • CGIMapExtension - + This directive maps a CGI file extension to a script interpreter.
  • +
+ + + +
top

Compiling Apache for NetWare

+ + + +

Compiling Apache requires MetroWerks CodeWarrior 6.x or higher to + be properly installed. Once Apache has been built, it needs to be + installed on a NetWare volume's root directory. The default is the + sys:/Apache2 directory.

+ +

Before running the server you must fill out the conf + directory. Copy the file HTTPD-STD.CONF from the distribution + conf directory and rename it to HTTPD.CONF. + Edit the HTTPD.CONF file searching for all @@Value@@ + markers and replacing them with the appropriate setting. Copy over + the conf/magic and conf/mime.types files as well.

+ +

Requirements:

+ + + +

The following development tools are required to build + Apache 2.0 for NetWare:

+ + + + + +

Building Apache using the Metrowerks Project Files:

+ + + +

All major pieces of Apache and APR are built using the + ApacheNW.mcp and LibAprNW.mcp project files. + This includes modules such as status, info, proxy, etc.

+ +
    +
  • Set the environment variable NovellLibC to the + location of the NetWare Libraries for C SDK, for example: +

    Set NovellLibC=c:\novell\ndk\libc

    +
  • + +
  • Make sure that the path to the CodeWarrior command line tools + (MWCCNLM.exe, MWLDNLM.exe) has been + included in the system's PATH environment variable.
  • + +
  • Make sure that the path to the AWK utility has been included in the + system's PATH environment variable.
  • + +
  • Download the source code and unzip to an appropriate directory on + your workstation.
  • + +
  • Change directory to \httpd\srclib\apr\build and run the + batch file prebuildnw.bat. The batch file will setup the build + environment for building the APR libraries. It will also run 2 AWK scripts + that will generate the export files for APR.
  • + +
  • Change directory to \httpd\srclib\apr and extract the project + file LIBAPRNW.mcp from the LIBAPRNW.mcp.zip file.
  • + +
  • Open the LIBAPRNW.mcp project file in the Metrowerks IDE.
  • + +
  • Select the target "Build Util - Gen URL Delim" and build the target. + This target will produce the NLM GENURI.nlm
  • + +
  • Copy the file GENURI.nlm to the SYS: volume + of a NetWare server and run using the following command: +
      +
    • SYS:\genuri > sys:\uri_delims.h
    • +
    +
  • + +
  • Copy the file uri_delims.h to the directory + \httpd\srclib\apr-util\uri on the build machine.
  • + +
  • Select the target "APR Debug NLM" or "APR Release NLM" in the IDE and build. + This will produce the file APRLIB.nlm. +
      +
    • [Optional] Select any of the LIB targets to produce a + statically linkable libraries.
    • +
    +
  • + +
  • Change directory to \httpd\build and run the batch file + prebuildnw.bat. This batch file will setup the build environment + for building the APACHE.nlm. It will also run several AWK scripts + that will generate the export files for APACHE.
  • + +
  • Change directory to \http and extract the project file + ApacheNW.mcp from the ApacheNW.mcp.zip file.
  • + +
  • Open the ApacheNW.mcp project file in the Metrowerks IDE.
  • + +
  • Select the target "Build Utility - DFTables" and build the target.
  • + +
  • Select the target "Build Util - Gen Test Chars" and build the target.
  • + +
  • Copy the files GENCHARS.nlm and DFTABLES.nlm + to the SYS: volume of a NetWare server and run using the following commands: +
      +
    • SYS:\genchars > sys:\test_char.h
    • +
    • SYS:\dftables > sys:\chartables.c
    • +
    +
  • + +
  • Copy the files test_char.h and chartables.c + to the directory \httpd\os\netware on the build machine.
  • + +
  • Select the target "Apache Full Debug" or "Apache Full Release" in + the IDE and build. This will produce the file APACHE2.nlm + along with all of the external module NLMs.
  • +
+ + + +

Building Apache using the NetWare makefiles:

+ + + +
    +
  • Set the environment variable NOVELLLIBC to the + location of the NetWare Libraries for C SDK, for example: +

    Set NOVELLLIBC=c:\novell\ndk\libc

    +
  • + +
  • Set the environment variable METROWERKS to the + location where you installed the Metrowerks CodeWarrior compiler, + for example: +

    Set METROWERKS=C:\Program Files\Metrowerks\CodeWarrior

    + If you installed to the default location C:\Program + Files\Metrowerks\CodeWarrior, you don't need to set this.
  • + +
  • Set the environment variable AP_WORK to the full path of + the \httpd directory.
  • + +
  • Set the environment variable APR_WORK to the full path of + the \httpd\srclib\apr directory.
  • + +
  • Make sure that the path to the AWK utility and the GNU make utility + (gmake.exe) have been included in the system's + PATH environment variable.
  • + +
  • Download the source code and unzip to an appropriate directory on + your workstation.
  • + +
  • Change directory to \httpd\srclib\apr-util\uri and build + GENURI.nlm by running "gmake -f nwgnumakefile".
  • + +
  • Copy the file GENURI.nlm to the SYS: volume + of a NetWare server and run using the following command: +

    SYS:\genuri > sys:\uri_delims.h

    +
  • + +
  • Copy the file uri_delims.h to the directory + \httpd\srclib\apr-util\uri on the build machine.
  • + +
  • Change directory to \httpd\srclib\apr and build APR + by running "gmake -f nwgnumakefile"
  • + +
  • Change directory to \httpd\srclib\pcre and build + DFTABLES.nlm by running "gmake -f nwgnumakefile"
  • + +
  • Change directory to \httpd\server and build + GENCHARS.nlm by running "gmake -f nwgnumakefile"
  • + +
  • Copy the files GENCHARS.nlm and DFTABLES.nlm + from their respective directories to the SYS: volume of a + NetWare server and run them using the following commands: +

    + SYS:\genchars > sys:\test_char.h
    + SYS:\dftables > sys:\chartables.c
    +

    +
  • + +
  • Copy the files test_char.h and chartables.c + to the directory \httpd\os\netware on the build machine.
  • + +
  • Change directory to \httpd and build Apache by running + "gmake -f nwgnumakefile". You can create a distribution directory by + adding an install parameter to the command, for example: +

    gmake -f nwgnumakefile install

    +
  • +
+ + + +

Additional make options

+ + + +
    +
  • gmake -f nwgnumakefile
    Builds release versions of all of the + binaries and copies them to a \release destination directory.
  • + +
  • gmake -f nwgnumakefile DEBUG=1
    Builds debug versions of all of the + binaries and copies them to a \debug destination directory.
  • + +
  • gmake -f nwgnumakefile install
    Creates a complete Apache + distribution with binaries, docs and additional support files in a + \dist\Apache2 directory.
  • + +
  • gmake -f nwgnumakefile installdev
    Same as install but also creates a + \lib and \include directory in the destination directory + and copies headers and import files.
  • + +
  • gmake -f nwgnumakefile clean
    Cleans all object files and binaries + from the \release or \debug build areas depending on whether + DEBUG has been defined.
  • + +
  • gmake -f nwgnumakefile clobber_all
    Same as clean and also deletes + the distribution directory if it exists.
  • +
+ + + +
\ No newline at end of file diff --git a/docs/manual/platform/netware.xml b/docs/manual/platform/netware.xml new file mode 100644 index 0000000000..c6f36acfea --- /dev/null +++ b/docs/manual/platform/netware.xml @@ -0,0 +1,607 @@ + + + + + + + + Using Apache With Novell NetWare + + + +

This document explains how to install, configure and run + Apache 2.0 under Novell NetWare 5.1 and above. If you find any bugs, + or wish to contribute in other ways, please use our + bug reporting + page.

+ +

The bug reporting page and dev-httpd mailing list are not + provided to answer questions about configuration or running Apache. + Before you submit a bug report or request, first consult this document, the + Frequently Asked Questions page and the other + relevant documentation topics. If you still have a question or problem, + post it to the + novell.devsup.webserver newsgroup, where many Apache users are more than + willing to answer new and obscure questions about using Apache on NetWare.

+ +

Most of this document assumes that you are installing Apache + from a binary distribution. If you want to compile Apache + yourself (possibly to help with development, or to track down + bugs), see the section on Compiling Apache for + NetWare below.

+ +
+ +
+ + Requirements + +

Apache 2.0 is designed to run on NetWare 5.1 and above.

+ +

If running on NetWare 5.1 you must install Service + Pack 4 or above.

+ +

If running on NetWare 6 you must install Service + Pack 1 or above.

+ +

NetWare service packs are available here.

+ +
+ +
+ + Downloading Apache for NetWare + +

Information on the latest version of Apache can be found on + the Apache web server at http://www.apache.org/. This + will list the current release, any more recent alpha or + beta-test releases, together with details of mirror web and + anonymous ftp sites.

+ +
+ +
+ + Installing Apache for NetWare + +

There is no Apache install program for NetWare currently. You + will need to compile apache and copy the files over to the + server manually. An install program will be posted at a later + date.

+ +

Follow these steps to install Apache on NetWare from the + binary download (assuming you will install to + sys:/apache2):

+ +
    +
  • Unzip the binary download file to the root of the SYS: + volume (may be installed to any volume)
  • + +
  • Edit the httpd.conf file setting ServerRoot and ServerName to reflect your correct server + settings
  • + +
  • Add SYS:/APACHE2 to the search path, for example: + SEARCH ADD SYS:\APACHE2 +
  • + +
+ +

Follow these steps to install Apache on NetWare manually + from your own build source (assuming you will install to + sys:/apache):

+ +
    +
  • Create a directory called Apache2 on a + NetWare volume
  • + +
  • Copy APACHE2.NLM, APRLIB.NLM, + HTDIGEST.NLM, HTPASSWD.NLM + to SYS:/APACHE2
  • + +
  • Create a directory under SYS:/APACHE2 + called CONF
  • + +
  • Copy the HTTPD-STD.CONF file to the + SYS:/APACHE2/CONF directory and rename to + HTTPD.CONF
  • + +
  • Copy the MIME.TYPES and MAGIC + files to SYS:/APACHE2/CONF directory
  • + +
  • Copy all files and subdirectories in \HTTPD-2.0\DOCS\ICONS + to SYS:/APACHE2/ICONS
  • + +
  • Copy all files and subdirectories in \HTTPD-2.0\DOCS\MANUAL + to SYS:/APACHE2/MANUAL
  • + +
  • Copy all files and subdirectories in \HTTPD-2.0\DOCS\ERROR + to SYS:/APACHE2/ERROR
  • + +
  • Copy all files and subdirectories in \HTTPD-2.0\DOCS\DOCROOT + to SYS:/APACHE2/HTDOCS
  • + +
  • Create the directory SYS:/APACHE2/LOGS + on the server
  • + +
  • Create the directory SYS:/APACHE2/CGI-BIN + on the server
  • + +
  • Create the directory SYS:/APACHE2/MODULES + and copy all nlm modules into the modules directory
  • + +
  • Edit the HTTPD.CONF file searching for all + @@Value@@ markers and replacing them with the + appropriate setting
  • + +
  • Add SYS:/APACHE2 to the search path, for example: + SEARCH ADD SYS:\APACHE2 +
  • +
+ +

Apache may be installed to other volumes besides the default SYS volume.

+ +
+ +
+ + Running Apache for NetWare + +

To start Apache just type apache at the + console. This will load apache in the OS address space. If you + prefer to load Apache in a protected address space you may + specify the address space with the load statement as follows:

+ + + load address space = apache2 apache2 + + +

This will load Apache into an address space called apache. + Running multiple instances of Apache concurrently on NetWare is + possible by loading each instance into its own protected + address space.

+ +

After starting Apache, it will be listening to port 80 + (unless you changed the Listen + directive in the configuration files). + To connect to the server and access the default page, + launch a browser and enter the server's name or address. This + should respond with a welcome page, and a link to the Apache + manual. If nothing happens or you get an error, look in the + error_log file in the logs + directory.

+ +

Once your basic installation is working, you should + configure it properly by editing the files in the + conf directory.

+ +

To unload Apache running in the OS address space just type + the following at the console:

+ + + unload apache2 + + +

or

+ + + apache2 shutdown + + +

If apache is running in a protected address space specify the + address space in the unload statement:

+ + + unload address space = apache2 apache2 + + +

When working with Apache it is important to know how it will + find the configuration files. You can specify a configuration + file on the command line in two ways:

+ +
    +
  • -f specifies a path to a particular + configuration file
  • +
+ + + apache2 -f "vol:/my server/conf/my.conf" + + + + apache -f test/test.conf + + +

In these cases, the proper ServerRoot + should be set in the configuration file.

+ +

If you don't specify a configuration file name with -f, + Apache will use the file name compiled into the server, usually + conf/httpd.conf. Invoking Apache with the -V + switch will display this value labeled as SERVER_CONFIG_FILE. + Apache will then determine its ServerRoot + by trying the following, in this order:

+ +
    +
  • A ServerRoot directive via a + -C switch.
  • + +
  • The -d switch on the command line.
  • + +
  • Current working directory
  • + +
  • The server root compiled into the server.
  • +
+ +

The server root compiled into the server is usually sys:/apache2. + invoking apache with the -V switch will display this value labeled as + HTTPD_ROOT.

+ +

Apache 2.0 for NetWare includes a set of command line directives that can + be used to modify or display information about the running instance of the + web server. Each of these directives must be preceded by the keyword + APACHE2:

+ +
+
RESTART
+
Instructs Apache to terminate all running worker + threads as they become idle, reread the configuration file and restart each + worker thread based on the new configuration.
+ +
VERSION
+
Displays version information about the currently + running instance of Apache.
+ +
MODULES
+
Displays a list of loaded modules both built-in + and external.
+ +
DIRECTIVES
+
Displays a list of all available directives.
+ +
SETTINGS
+
Enables or disables the thread status display + on the console. When enabled, a status of the number of running threads + is displayed along with their status.
+ +
SHUTDOWN
+
Terminates the running instance of the Apache + web server.
+
+ +
+ +
+ + Configuring Apache for NetWare + +

Apache is configured by files in the conf + directory. These are the same as files used to configure the + Unix version, but there are a few different directives for + Apache on NetWare. See the Apache + documentation for all the available directives.

+ +

The main differences in Apache for NetWare are:

+ +
    +
  • +

    Because Apache for NetWare is multithreaded, it does not + use a separate process for each request, as Apache does in some Unix + implementations. Instead there are only threads running: a parent + thread, and a multiple child threads which handle the requests.

    + +

    So the "process"-management directives are different:

    + +

    MaxRequestsPerChild - + Like the Unix directive, this controls how many requests + a worker thread will serve before exiting. The recommended default, + MaxRequestsPerChild 0, causes the thread to continue servicing + request indefinitely. It is recommended on NetWare, unless there is some + specific reason, that this directive always remain set to 0.

    + +

    StartThreads - + This directive tells the server how many threads it should start initially. + The recommended default is StartThreads 50.

    + +

    MinSpareThreads - + This directive instructs the server to spawn additional worker threads + if the number of idle threads ever falls below this value. The recommended + default is MinSpareThreads 10.

    + +

    MaxSpareThreads - + This directive instructs the server to begin terminating worker threads + if the number of idle threads ever exceeds this value. The recommended + default is MaxSpareThreads 100.

    + +

    MaxThreads - + This directive limits the total number of work threads to a maximum + value. The recommended default is ThreadsPerChild 250.

    + +

    ThreadStackSize - + This directive tells the server what size of stack to use + for the individual worker thread. The recommended default + is ThreadStackSize 65536.

    +
  • + +
  • +

    The directives that accept filenames as arguments now + must use NetWare filenames instead of Unix ones. However, + because Apache uses Unix-style names internally, you must + use forward slashes, not backslashes. It is recommended that all rooted + file paths begin with a volume name. If omitted, Apache will + assume the SYS: volume.

    +
  • + +
  • +

    Apache for NetWare has the ability to load modules at + runtime, without recompiling the server. If Apache is + compiled normally, it will install a number of optional + modules in the \Apache2\modules directory. + To activate these, or other modules, the LoadModule directive + must be used. For example, to active the status module, use + the following (in addition to the status-activating + directives in access.conf):

    + + + LoadModule status_module modules/status.nlm + + +

    Information on creating loadable + modules is also available.

    +
  • +
+ +
+ + Additional NetWare specific directives: + +
    +
  • CGIMapExtension - + This directive maps a CGI file extension to a script interpreter.
  • +
+ +
+ +
+ +
+ + Compiling Apache for NetWare + +

Compiling Apache requires MetroWerks CodeWarrior 6.x or higher to + be properly installed. Once Apache has been built, it needs to be + installed on a NetWare volume's root directory. The default is the + sys:/Apache2 directory.

+ +

Before running the server you must fill out the conf + directory. Copy the file HTTPD-STD.CONF from the distribution + conf directory and rename it to HTTPD.CONF. + Edit the HTTPD.CONF file searching for all @@Value@@ + markers and replacing them with the appropriate setting. Copy over + the conf/magic and conf/mime.types files as well.

+ +
+ + Requirements: + +

The following development tools are required to build + Apache 2.0 for NetWare:

+ + + +
+ +
+ + Building Apache using the Metrowerks Project Files: + +

All major pieces of Apache and APR are built using the + ApacheNW.mcp and LibAprNW.mcp project files. + This includes modules such as status, info, proxy, etc.

+ +
    +
  • Set the environment variable NovellLibC to the + location of the NetWare Libraries for C SDK, for example: + Set NovellLibC=c:\novell\ndk\libc +
  • + +
  • Make sure that the path to the CodeWarrior command line tools + (MWCCNLM.exe, MWLDNLM.exe) has been + included in the system's PATH environment variable.
  • + +
  • Make sure that the path to the AWK utility has been included in the + system's PATH environment variable.
  • + +
  • Download the source code and unzip to an appropriate directory on + your workstation.
  • + +
  • Change directory to \httpd\srclib\apr\build and run the + batch file prebuildnw.bat. The batch file will setup the build + environment for building the APR libraries. It will also run 2 AWK scripts + that will generate the export files for APR.
  • + +
  • Change directory to \httpd\srclib\apr and extract the project + file LIBAPRNW.mcp from the LIBAPRNW.mcp.zip file.
  • + +
  • Open the LIBAPRNW.mcp project file in the Metrowerks IDE.
  • + +
  • Select the target "Build Util - Gen URL Delim" and build the target. + This target will produce the NLM GENURI.nlm
  • + +
  • Copy the file GENURI.nlm to the SYS: volume + of a NetWare server and run using the following command: +
      +
    • SYS:\genuri > sys:\uri_delims.h
    • +
    +
  • + +
  • Copy the file uri_delims.h to the directory + \httpd\srclib\apr-util\uri on the build machine.
  • + +
  • Select the target "APR Debug NLM" or "APR Release NLM" in the IDE and build. + This will produce the file APRLIB.nlm. +
      +
    • [Optional] Select any of the LIB targets to produce a + statically linkable libraries.
    • +
    +
  • + +
  • Change directory to \httpd\build and run the batch file + prebuildnw.bat. This batch file will setup the build environment + for building the APACHE.nlm. It will also run several AWK scripts + that will generate the export files for APACHE.
  • + +
  • Change directory to \http and extract the project file + ApacheNW.mcp from the ApacheNW.mcp.zip file.
  • + +
  • Open the ApacheNW.mcp project file in the Metrowerks IDE.
  • + +
  • Select the target "Build Utility - DFTables" and build the target.
  • + +
  • Select the target "Build Util - Gen Test Chars" and build the target.
  • + +
  • Copy the files GENCHARS.nlm and DFTABLES.nlm + to the SYS: volume of a NetWare server and run using the following commands: +
      +
    • SYS:\genchars > sys:\test_char.h
    • +
    • SYS:\dftables > sys:\chartables.c
    • +
    +
  • + +
  • Copy the files test_char.h and chartables.c + to the directory \httpd\os\netware on the build machine.
  • + +
  • Select the target "Apache Full Debug" or "Apache Full Release" in + the IDE and build. This will produce the file APACHE2.nlm + along with all of the external module NLMs.
  • +
+ +
+ +
+ + Building Apache using the NetWare makefiles: + +
    +
  • Set the environment variable NOVELLLIBC to the + location of the NetWare Libraries for C SDK, for example: + Set NOVELLLIBC=c:\novell\ndk\libc +
  • + +
  • Set the environment variable METROWERKS to the + location where you installed the Metrowerks CodeWarrior compiler, + for example: + Set METROWERKS=C:\Program Files\Metrowerks\CodeWarrior + If you installed to the default location C:\Program + Files\Metrowerks\CodeWarrior, you don't need to set this.
  • + +
  • Set the environment variable AP_WORK to the full path of + the \httpd directory.
  • + +
  • Set the environment variable APR_WORK to the full path of + the \httpd\srclib\apr directory.
  • + +
  • Make sure that the path to the AWK utility and the GNU make utility + (gmake.exe) have been included in the system's + PATH environment variable.
  • + +
  • Download the source code and unzip to an appropriate directory on + your workstation.
  • + +
  • Change directory to \httpd\srclib\apr-util\uri and build + GENURI.nlm by running "gmake -f nwgnumakefile".
  • + +
  • Copy the file GENURI.nlm to the SYS: volume + of a NetWare server and run using the following command: + SYS:\genuri > sys:\uri_delims.h +
  • + +
  • Copy the file uri_delims.h to the directory + \httpd\srclib\apr-util\uri on the build machine.
  • + +
  • Change directory to \httpd\srclib\apr and build APR + by running "gmake -f nwgnumakefile"
  • + +
  • Change directory to \httpd\srclib\pcre and build + DFTABLES.nlm by running "gmake -f nwgnumakefile"
  • + +
  • Change directory to \httpd\server and build + GENCHARS.nlm by running "gmake -f nwgnumakefile"
  • + +
  • Copy the files GENCHARS.nlm and DFTABLES.nlm + from their respective directories to the SYS: volume of a + NetWare server and run them using the following commands: + + SYS:\genchars > sys:\test_char.h
    + SYS:\dftables > sys:\chartables.c
    +
    +
  • + +
  • Copy the files test_char.h and chartables.c + to the directory \httpd\os\netware on the build machine.
  • + +
  • Change directory to \httpd and build Apache by running + "gmake -f nwgnumakefile". You can create a distribution directory by + adding an install parameter to the command, for example: + gmake -f nwgnumakefile install +
  • +
+ +
+ +
+ + Additional make options + +
    +
  • gmake -f nwgnumakefile
    Builds release versions of all of the + binaries and copies them to a \release destination directory.
  • + +
  • gmake -f nwgnumakefile DEBUG=1
    Builds debug versions of all of the + binaries and copies them to a \debug destination directory.
  • + +
  • gmake -f nwgnumakefile install
    Creates a complete Apache + distribution with binaries, docs and additional support files in a + \dist\Apache2 directory.
  • + +
  • gmake -f nwgnumakefile installdev
    Same as install but also creates a + \lib and \include directory in the destination directory + and copies headers and import files.
  • + +
  • gmake -f nwgnumakefile clean
    Cleans all object files and binaries + from the \release or \debug build areas depending on whether + DEBUG has been defined.
  • + +
  • gmake -f nwgnumakefile clobber_all
    Same as clean and also deletes + the distribution directory if it exists.
  • +
+ +
+ +
+ +
+ diff --git a/docs/manual/platform/perf-hp.html b/docs/manual/platform/perf-hp.html deleted file mode 100644 index 26d6bb33d9..0000000000 --- a/docs/manual/platform/perf-hp.html +++ /dev/null @@ -1,100 +0,0 @@ - - - - - - - Running a High-Performance Web Server on HPUX - - - - -   - - - -

Running a High-Performance Web Server for - HPUX

-
-Date: Wed, 05 Nov 1997 16:59:34 -0800
-From: Rick Jones <raj@cup.hp.com>
-Reply-To: raj@cup.hp.com
-Organization: Network Performance
-Subject: HP-UX tuning tips
-
- Here are some tuning tips for HP-UX to add to the tuning page. - -

For HP-UX 9.X: Upgrade to 10.20
- For HP-UX 10.[00|01|10]: Upgrade to 10.20

- -

For HP-UX 10.20:

- -

Install the latest cumulative ARPA Transport Patch. This - will allow you to configure the size of the TCP connection - lookup hash table. The default is 256 buckets and must be set - to a power of two. This is accomplished with adb against the - *disc* image of the kernel. The variable name is tcp_hash_size. - Notice that it's critically important that you use "W" to write - a 32 bit quantity, not "w" to write a 16 bit value when - patching the disc image because the tcp_hash_size variable is a - 32 bit quantity.

- -

How to pick the value? Examine the output of ftp://ftp.cup.hp.com/dist/networking/tools/connhist - and see how many total TCP connections exist on the system. You - probably want that number divided by the hash table size to be - reasonably small, say less than 10. Folks can look at HP's - SPECweb96 disclosures for some common settings. These can be - found at http://www.specbench.org/. - If an HP-UX system was performing at 1000 SPECweb96 connections - per second, the TIME_WAIT time of 60 seconds would mean 60,000 - TCP "connections" being tracked.

- -

Folks can check their listen queue depths with ftp://ftp.cup.hp.com/dist/networking/misc/listenq.

- -

If folks are running Apache on a PA-8000 based system, they - should consider "chatr'ing" the Apache executable to have a - large page size. This would be "chatr +pi L <BINARY>." - The GID of the running executable must have MLOCK privileges. - Setprivgrp(1m) should be consulted for assigning MLOCK. The - change can be validated by running Glance and examining the - memory regions of the server(s) to make sure that they show a - non-trivial fraction of the text segment being locked.

- -

If folks are running Apache on MP systems, they might - consider writing a small program that uses mpctl() to bind - processes to processors. A simple pid % numcpu algorithm is - probably sufficient. This might even go into the source - code.

- -

If folks are concerned about the number of FIN_WAIT_2 - connections, they can use nettune to shrink the value of - tcp_keepstart. However, they should be careful there - - certainly do not make it less than oh two to four minutes. If - tcp_hash_size has been set well, it is probably OK to let the - FIN_WAIT_2's take longer to timeout (perhaps even the default - two hours) - they will not on average have a big impact on - performance.

- -

There are other things that could go into the code base, but - that might be left for another email. Feel free to drop me a - message if you or others are interested.

- -

sincerely,

- -

rick jones
- http://www.cup.hp.com/netperf/NetperfPage.html

-
- -

Apache HTTP Server Version 1.3

- Index - Home - - - diff --git a/docs/manual/platform/perf-hp.html.en b/docs/manual/platform/perf-hp.html.en new file mode 100644 index 0000000000..320e12013b --- /dev/null +++ b/docs/manual/platform/perf-hp.html.en @@ -0,0 +1,80 @@ + + +Running a High-Performance Web Server on HPUX - Apache HTTP Server
<-

Running a High-Performance Web Server on HPUX

+ +
+Date: Wed, 05 Nov 1997 16:59:34 -0800
+From: Rick Jones <raj@cup.hp.com>
+Reply-To: raj@cup.hp.com
+Organization: Network Performance
+Subject: HP-UX tuning tips
+
+ +

Here are some tuning tips for HP-UX to add to the tuning page.

+ +

For HP-UX 9.X: Upgrade to 10.20
+ For HP-UX 10.[00|01|10]: Upgrade to 10.20

+ +

For HP-UX 10.20:

+ +

Install the latest cumulative ARPA Transport Patch. This + will allow you to configure the size of the TCP connection + lookup hash table. The default is 256 buckets and must be set + to a power of two. This is accomplished with adb against the + *disc* image of the kernel. The variable name is tcp_hash_size. + Notice that it's critically important that you use "W" + to write a 32 bit quantity, not "w" to write a 16 bit + value when patching the disc image because the tcp_hash_size + variable is a 32 bit quantity.

+ +

How to pick the value? Examine the output of ftp://ftp.cup.hp.com/dist/networking/tools/connhist + and see how many total TCP connections exist on the system. You + probably want that number divided by the hash table size to be + reasonably small, say less than 10. Folks can look at HP's + SPECweb96 disclosures for some common settings. These can be + found at http://www.specbench.org/. + If an HP-UX system was performing at 1000 SPECweb96 connections + per second, the TIME_WAIT time of 60 seconds would mean + 60,000 TCP "connections" being tracked.

+ +

Folks can check their listen queue depths with ftp://ftp.cup.hp.com/dist/networking/misc/listenq.

+ +

If folks are running Apache on a PA-8000 based system, they + should consider "chatr'ing" the Apache executable to have a + large page size. This would be "chatr +pi L <BINARY>". + The GID of the running executable must have MLOCK privileges. + Setprivgrp(1m) should be consulted for assigning + MLOCK. The change can be validated by running Glance + and examining the memory regions of the server(s) to make sure that + they show a non-trivial fraction of the text segment being locked.

+ +

If folks are running Apache on MP systems, they might + consider writing a small program that uses mpctl() + to bind processes to processors. A simple pid % numcpu + algorithm is probably sufficient. This might even go into the + source code.

+ +

If folks are concerned about the number of FIN_WAIT_2 + connections, they can use nettune to shrink the value of + tcp_keepstart. However, they should be careful there - + certainly do not make it less than oh two to four minutes. If + tcp_hash_size has been set well, it is probably OK to + let the FIN_WAIT_2's take longer to timeout (perhaps + even the default two hours) - they will not on average have a big + impact on performance.

+ +

There are other things that could go into the code base, but + that might be left for another email. Feel free to drop me a + message if you or others are interested.

+ +

sincerely,

+ +

rick jones

+ +

http://www.cup.hp.com/netperf/NetperfPage.html

+ +
\ No newline at end of file diff --git a/docs/manual/platform/perf-hp.xml b/docs/manual/platform/perf-hp.xml new file mode 100644 index 0000000000..c410cf5b02 --- /dev/null +++ b/docs/manual/platform/perf-hp.xml @@ -0,0 +1,95 @@ + + + + + + + + Running a High-Performance Web Server on HPUX + + + +
+Date: Wed, 05 Nov 1997 16:59:34 -0800
+From: Rick Jones <raj@cup.hp.com>
+Reply-To: raj@cup.hp.com
+Organization: Network Performance
+Subject: HP-UX tuning tips
+
+ +

Here are some tuning tips for HP-UX to add to the tuning page.

+ +

For HP-UX 9.X: Upgrade to 10.20
+ For HP-UX 10.[00|01|10]: Upgrade to 10.20

+ +

For HP-UX 10.20:

+ +

Install the latest cumulative ARPA Transport Patch. This + will allow you to configure the size of the TCP connection + lookup hash table. The default is 256 buckets and must be set + to a power of two. This is accomplished with adb against the + *disc* image of the kernel. The variable name is tcp_hash_size. + Notice that it's critically important that you use "W" + to write a 32 bit quantity, not "w" to write a 16 bit + value when patching the disc image because the tcp_hash_size + variable is a 32 bit quantity.

+ +

How to pick the value? Examine the output of ftp://ftp.cup.hp.com/dist/networking/tools/connhist + and see how many total TCP connections exist on the system. You + probably want that number divided by the hash table size to be + reasonably small, say less than 10. Folks can look at HP's + SPECweb96 disclosures for some common settings. These can be + found at http://www.specbench.org/. + If an HP-UX system was performing at 1000 SPECweb96 connections + per second, the TIME_WAIT time of 60 seconds would mean + 60,000 TCP "connections" being tracked.

+ +

Folks can check their listen queue depths with ftp://ftp.cup.hp.com/dist/networking/misc/listenq.

+ +

If folks are running Apache on a PA-8000 based system, they + should consider "chatr'ing" the Apache executable to have a + large page size. This would be "chatr +pi L <BINARY>". + The GID of the running executable must have MLOCK privileges. + Setprivgrp(1m) should be consulted for assigning + MLOCK. The change can be validated by running Glance + and examining the memory regions of the server(s) to make sure that + they show a non-trivial fraction of the text segment being locked.

+ +

If folks are running Apache on MP systems, they might + consider writing a small program that uses mpctl() + to bind processes to processors. A simple pid % numcpu + algorithm is probably sufficient. This might even go into the + source code.

+ +

If folks are concerned about the number of FIN_WAIT_2 + connections, they can use nettune to shrink the value of + tcp_keepstart. However, they should be careful there - + certainly do not make it less than oh two to four minutes. If + tcp_hash_size has been set well, it is probably OK to + let the FIN_WAIT_2's take longer to timeout (perhaps + even the default two hours) - they will not on average have a big + impact on performance.

+ +

There are other things that could go into the code base, but + that might be left for another email. Feel free to drop me a + message if you or others are interested.

+ +

sincerely,

+ +

rick jones

+ +

http://www.cup.hp.com/netperf/NetperfPage.html

+ +
+ +
+ +